ia64/xen-unstable

changeset 16708:a30aabe3c84a

svm: Properly mask unsupported bits in CPUID_80000001_ECX.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Sat Jan 12 09:29:38 2008 +0000 (2008-01-12)
parents 51aa2f884f64
children 9862217f3c34
files xen/arch/x86/hvm/svm/svm.c
line diff
     1.1 --- a/xen/arch/x86/hvm/svm/svm.c	Fri Jan 11 11:01:36 2008 +0000
     1.2 +++ b/xen/arch/x86/hvm/svm/svm.c	Sat Jan 12 09:29:38 2008 +0000
     1.3 @@ -1009,6 +1009,12 @@ static void svm_vmexit_do_cpuid(struct v
     1.4          __clear_bit(X86_FEATURE_PSE36 & 31, &edx);
     1.5  
     1.6          /* Filter all other features according to a whitelist. */
     1.7 +        ecx &= (bitmaskof(X86_FEATURE_LAHF_LM) |
     1.8 +                bitmaskof(X86_FEATURE_ALTMOVCR) |
     1.9 +                bitmaskof(X86_FEATURE_ABM) |
    1.10 +                bitmaskof(X86_FEATURE_SSE4A) |
    1.11 +                bitmaskof(X86_FEATURE_MISALIGNSSE) |
    1.12 +                bitmaskof(X86_FEATURE_3DNOWPF));
    1.13          edx &= (0x0183f3ff | /* features shared with 0x00000001:EDX */
    1.14                  bitmaskof(X86_FEATURE_NX) |
    1.15                  bitmaskof(X86_FEATURE_LM) |