s390/bp: add missing BPENTER to program check handler
authorHeiko Carstens <hca@linux.ibm.com>
Tue, 28 Feb 2023 12:57:47 +0000 (13:57 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Mon, 13 Mar 2023 08:16:42 +0000 (09:16 +0100)
When leaving interpretive execution because of a program check BPENTER
should be called like it is done on interrupt exit as well.

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

index 76a06f3..2af5d76 100644 (file)
@@ -355,6 +355,7 @@ ENTRY(pgm_check_handler)
 #if IS_ENABLED(CONFIG_KVM)
        # cleanup critical section for program checks in __sie64a
        OUTSIDE %r9,.Lsie_gmap,.Lsie_done,1f
+       BPENTER __SF_SIE_FLAGS(%r15),(_TIF_ISOLATE_BP|_TIF_ISOLATE_BP_GUEST)
        SIEEXIT
        lghi    %r10,_PIF_GUEST_FAULT
 #endif