]> xenbits.xensource.com Git - xen.git/commitdiff
x86/AMD: feature masking is unavailable on Fam11
authorJan Beulich <jbeulich@suse.com>
Wed, 9 Apr 2014 14:13:25 +0000 (16:13 +0200)
committerJan Beulich <jbeulich@suse.com>
Wed, 9 Apr 2014 14:13:25 +0000 (16:13 +0200)
Reported-by: Aravind Gopalakrishnan<aravind.gopalakrishnan@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/cpu/amd.c

index 08ec56ac793ca605200f856192187c25e594453b..d55c0fd2212a6fe2082bcaf4c3135f6d8501e8d4 100644 (file)
@@ -107,6 +107,10 @@ static void __devinit set_cpuidmask(const struct cpuinfo_x86 *c)
        ASSERT((status == not_parsed) && (smp_processor_id() == 0));
        status = no_mask;
 
+       /* Fam11 doesn't support masking at all. */
+       if (c->x86 == 0x11)
+               return;
+
        if (~(opt_cpuid_mask_ecx & opt_cpuid_mask_edx &
              opt_cpuid_mask_ext_ecx & opt_cpuid_mask_ext_edx)) {
                feat_ecx = opt_cpuid_mask_ecx;
@@ -176,7 +180,6 @@ static void __devinit set_cpuidmask(const struct cpuinfo_x86 *c)
               extfeat_ecx, extfeat_edx);
 
  setmask:
-       /* FIXME check if processor supports CPUID masking */
        /* AMD processors prior to family 10h required a 32-bit password */
        if (c->x86 >= 0x10) {
                wrmsr(MSR_K8_FEATURE_MASK, feat_edx, feat_ecx);