]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
s390/head64: Make startup code ready for lowcore relocation
authorSven Schnelle <svens@linux.ibm.com>
Mon, 22 Jul 2024 13:41:15 +0000 (15:41 +0200)
committerVasily Gorbik <gor@linux.ibm.com>
Tue, 23 Jul 2024 14:02:32 +0000 (16:02 +0200)
In preparation of having lowcore at different address than zero,
add the base register to all lowcore accesses in startup_continue().

Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/kernel/head64.S

index 45413b04efc525a8eed9aeb9d16476a8c20a5463..396034b2fe678238c37b1052316f837d4c291cbc 100644 (file)
@@ -10,6 +10,7 @@
 
 #include <linux/init.h>
 #include <linux/linkage.h>
+#include <asm/lowcore.h>
 #include <asm/asm-offsets.h>
 #include <asm/thread_info.h>
 #include <asm/page.h>
 __HEAD
 SYM_CODE_START(startup_continue)
        larl    %r1,tod_clock_base
-       mvc     0(16,%r1),__LC_BOOT_CLOCK
+       GET_LC  %r2
+       mvc     0(16,%r1),__LC_BOOT_CLOCK(%r2)
 #
 # Setup stack
 #
        larl    %r14,init_task
-       stg     %r14,__LC_CURRENT
+       stg     %r14,__LC_CURRENT(%r2)
        larl    %r15,init_thread_union+STACK_INIT_OFFSET
-       stg     %r15,__LC_KERNEL_STACK
+       stg     %r15,__LC_KERNEL_STACK(%r2)
        brasl   %r14,sclp_early_adjust_va       # allow sclp_early_printk
        brasl   %r14,startup_init               # s390 specific early init
        brasl   %r14,start_kernel               # common init code