File 54c0e398-x86-correctly-check-for-sub-leaf-zero-of-leaf-7-in-pv_cpuid.patch of Package xen.481
# Commit ae1edef1ae33f3bcff2580116ae2b7c9ffef42f2
# Date 2015-01-22 12:48:40 +0100
# Author Jan Beulich <jbeulich@suse.com>
# Committer Jan Beulich <jbeulich@suse.com>
x86: correctly check for sub-leaf zero of leaf 7 in pv_cpuid()
Only the low 32 bits are relevant.
For consistency also change a cast on regs->eax to regs->_eax.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -787,7 +787,7 @@ void pv_cpuid(struct cpu_user_regs *regs
__clear_bit(X86_FEATURE_PSE36, &d);
}
- switch ( (uint32_t)regs->eax )
+ switch ( regs->_eax )
{
case 0x00000001:
/* Modify Feature Information. */
@@ -822,7 +822,7 @@ void pv_cpuid(struct cpu_user_regs *regs
break;
case 0x00000007:
- if ( regs->ecx == 0 )
+ if ( regs->_ecx == 0 )
b &= (cpufeat_mask(X86_FEATURE_BMI1) |
cpufeat_mask(X86_FEATURE_HLE) |
cpufeat_mask(X86_FEATURE_AVX2) |