]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
s390/entry: Fix setting _CIF_MCCK_GUEST with lowcore relocation
authorSven Schnelle <svens@linux.ibm.com>
Thu, 20 Mar 2025 12:25:38 +0000 (13:25 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Apr 2025 12:39:32 +0000 (14:39 +0200)
[ Upstream commit 121df45b37a1016ee6828c2ca3ba825f3e18a8c1 ]

When lowcore relocation is enabled, the machine check handler doesn't
use the lowcore address when setting _CIF_MCCK_GUEST. Fix this by
adding the missing base register.

Fixes: 0001b7bbc53a ("s390/entry: Make mchk_int_handler() ready for lowcore relocation")
Reported-by: Heiko Carstens <hca@linux.ibm.com>
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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/s390/kernel/entry.S

index 594da4cba707a639afe3b36127c26ab18629ad79..a7de838f803189f9d79fd4845a3fd53d3d6ef03d 100644 (file)
@@ -501,7 +501,7 @@ SYM_CODE_START(mcck_int_handler)
        clgrjl  %r9,%r14, 4f
        larl    %r14,.Lsie_leave
        clgrjhe %r9,%r14, 4f
-       lg      %r10,__LC_PCPU
+       lg      %r10,__LC_PCPU(%r13)
        oi      __PCPU_FLAGS+7(%r10), _CIF_MCCK_GUEST
 4:     BPENTER __SF_SIE_FLAGS(%r15),_TIF_ISOLATE_BP_GUEST
        SIEEXIT __SF_SIE_CONTROL(%r15),%r13