From 150f6cdbfe079816a0df8b9d57320ca42fc39d12 Mon Sep 17 00:00:00 2001 From: Andrew Cooper Date: Tue, 9 Apr 2024 21:39:51 +0100 Subject: [PATCH] x86/entry: Fix build with older toolchains Binutils older than 2.29 doesn't know INCSSPD. Fixes: 8e186f98ce0e ("x86: Use indirect calls in reset-stack infrastructure") Signed-off-by: Andrew Cooper Reviewed-by: Stefano Stabellini (cherry picked from commit a9fa82500818a8d8ce5f2843f1577bd2c29d088e) --- xen/arch/x86/x86_64/entry.S | 2 ++ 1 file changed, 2 insertions(+) diff --git a/xen/arch/x86/x86_64/entry.S b/xen/arch/x86/x86_64/entry.S index 67ca00dbe1..e34be4801b 100644 --- a/xen/arch/x86/x86_64/entry.S +++ b/xen/arch/x86/x86_64/entry.S @@ -643,7 +643,9 @@ ENTRY(continue_pv_domain) * JMPed to. Drop the return address. */ add $8, %rsp +#ifdef CONFIG_XEN_SHSTK ALTERNATIVE "", "mov $2, %eax; incsspd %eax", X86_FEATURE_XEN_SHSTK +#endif call check_wakeup_from_wait ret_from_intr: -- 2.39.5