Skip to content
Snippets Groups Projects
Select Git revision
  • 0d0f6249058834ffe1ceaad0bb31464af66f6e7a
  • openEuler-1.0-LTS default protected
  • openEuler-22.09
  • OLK-5.10
  • openEuler-22.03-LTS
  • openEuler-22.03-LTS-Ascend
  • master
  • openEuler-22.03-LTS-LoongArch-NW
  • openEuler-22.09-HCK
  • openEuler-20.03-LTS-SP3
  • openEuler-21.09
  • openEuler-21.03
  • openEuler-20.09
  • 4.19.90-2210.5.0
  • 5.10.0-123.0.0
  • 5.10.0-60.63.0
  • 5.10.0-60.62.0
  • 4.19.90-2210.4.0
  • 5.10.0-121.0.0
  • 5.10.0-60.61.0
  • 4.19.90-2210.3.0
  • 5.10.0-60.60.0
  • 5.10.0-120.0.0
  • 5.10.0-60.59.0
  • 5.10.0-119.0.0
  • 4.19.90-2210.2.0
  • 4.19.90-2210.1.0
  • 5.10.0-118.0.0
  • 5.10.0-106.19.0
  • 5.10.0-60.58.0
  • 4.19.90-2209.6.0
  • 5.10.0-106.18.0
  • 5.10.0-106.17.0
33 results

arch

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Kirill A. Shutemov authored and Ingo Molnar committed
    Eric and Hugh have reported instant reboot due to my recent changes in
    decompression code.
    
    The root cause is that I didn't realize that we need to adjust GOT to be
    able to run C code that early.
    
    The problem is only visible with an older toolchain. Binutils >= 2.24 is
    able to eliminate GOT references by replacing them with RIP-relative
    address loads:
    
      https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=80d873266dec
    
    
    
    We need to adjust GOT two times:
    
     - before calling paging_prepare() using the initial load address
     - before calling C code from the relocated kernel
    
    Reported-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
    Reported-by: default avatarHugh Dickins <hughd@google.com>
    Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
    Reviewed-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Fixes: 194a9749 ("x86/boot/compressed/64: Handle 5-level paging boot if kernel is above 4G")
    Link: http://lkml.kernel.org/r/20180516080131.27913-2-kirill.shutemov@linux.intel.com
    
    
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    5c9b0b1c
    History
    Name Last commit Last update
    ..