From: Jan Beulich Date: Thu, 1 Feb 2018 10:32:45 +0000 (+0100) Subject: x86/shim: don't use 32-bit compare on boolean variable X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~651 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=98dc9606868a807206ad0f4c3a45046d4e0e1260;p=xen.git x86/shim: don't use 32-bit compare on boolean variable Current upstream gas silently assumes 32-bit operand size for most operations where the size can't be inferred from an involved register (my own one doesn't anymore, which is how I've noticed this). It is pure luck that the 3 bytes following pvh_boot are currently padding ones. Signed-off-by: Jan Beulich Reviewed-by: Andrew Cooper Reviewed-by: Roger Pau Monné --- diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S index 3cb66fc06b..63bc1b3621 100644 --- a/xen/arch/x86/boot/head.S +++ b/xen/arch/x86/boot/head.S @@ -585,7 +585,7 @@ trampoline_setup: push %eax /* Magic number. */ call reloc #ifdef CONFIG_PVH_GUEST - cmp $0, sym_fs(pvh_boot) + cmpb $0, sym_fs(pvh_boot) je 1f mov %eax, sym_fs(pvh_start_info_pa) jmp 2f