From: Andrew Cooper Date: Fri, 5 Aug 2016 13:51:13 +0000 (+0100) Subject: x86/msr: Correct the definition of MSR_IA32_APICBASE_BASE X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1266 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=dbc4b6e13a5d0dd8967cde7ff7000ab1ed88625e;p=xen.git x86/msr: Correct the definition of MSR_IA32_APICBASE_BASE 0xfffff << 12 is undefined behaviour, due to shifting into the sign bit of an integer. Spotted by the Undefined Behaviour Sanitiser Signed-off-by: Andrew Cooper Reviewed-by: Wei Liu --- diff --git a/xen/include/asm-x86/msr-index.h b/xen/include/asm-x86/msr-index.h index 4e08de6384..b99c623367 100644 --- a/xen/include/asm-x86/msr-index.h +++ b/xen/include/asm-x86/msr-index.h @@ -305,7 +305,7 @@ #define MSR_IA32_APICBASE_BSP (1<<8) #define MSR_IA32_APICBASE_EXTD (1<<10) #define MSR_IA32_APICBASE_ENABLE (1<<11) -#define MSR_IA32_APICBASE_BASE (0xfffff<<12) +#define MSR_IA32_APICBASE_BASE 0x000ffffffffff000ul #define MSR_IA32_APICBASE_MSR 0x800 #define MSR_IA32_APICTPR_MSR 0x808 #define MSR_IA32_APICPPR_MSR 0x80a