x86/xen: Fix initialisation in hypercall_page after rethunk
authorBen Hutchings <ben@decadent.org.uk>
Wed, 13 Jul 2022 22:39:33 +0000 (00:39 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Jul 2022 10:54:11 +0000 (12:54 +0200)
The hypercall_page is special and the RETs there should not be changed
into rethunk calls (but can have SLS mitigation).  Change the initial
instructions to ret + int3 padding, as was done in upstream commit
5b2fc51576ef "x86/ibt,xen: Sprinkle the ENDBR".

Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/xen/xen-head.S

index 38b73e7e54ba7cc8656ee4a6c892c6104f81dba5..2a3ef5fcba34b92c32ff85c946f8f1ec6c5f69ee 100644 (file)
@@ -69,9 +69,9 @@ SYM_CODE_END(asm_cpu_bringup_and_idle)
 SYM_CODE_START(hypercall_page)
        .rept (PAGE_SIZE / 32)
                UNWIND_HINT_FUNC
-               .skip 31, 0x90
                ANNOTATE_UNRET_SAFE
-               RET
+               ret
+               .skip 31, 0xcc
        .endr
 
 #define HYPERCALL(n) \