]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
s390/entry: Make ret_from_fork() ready for lowcore relocation
authorSven Schnelle <svens@linux.ibm.com>
Mon, 22 Jul 2024 13:41:25 +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 ret_from_fork().

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/entry.S

index bbdbe3c3a7701ffb558a8d2377e9951e30f7ada8..2bd9ef24ace38a294edecd2a1c125e9e96e1f3dc 100644 (file)
@@ -307,12 +307,13 @@ SYM_CODE_START(ret_from_fork)
        lgr     %r3,%r11
        brasl   %r14,__ret_from_fork
        STACKLEAK_ERASE
-       lctlg   %c1,%c1,__LC_USER_ASCE
-       mvc     __LC_RETURN_PSW(16),STACK_FRAME_OVERHEAD+__PT_PSW(%r15)
+       GET_LC  %r13
+       lctlg   %c1,%c1,__LC_USER_ASCE(%r13)
+       mvc     __LC_RETURN_PSW(16,%r13),STACK_FRAME_OVERHEAD+__PT_PSW(%r15)
        BPON
        LBEAR   STACK_FRAME_OVERHEAD+__PT_LAST_BREAK(%r15)
+       stpt    __LC_EXIT_TIMER(%r13)
        lmg     %r0,%r15,STACK_FRAME_OVERHEAD+__PT_R0(%r15)
-       stpt    __LC_EXIT_TIMER
        LPSWEY  __LC_RETURN_PSW,__LC_RETURN_LPSWE
 SYM_CODE_END(ret_from_fork)