From: Boris Ostrovsky Date: Fri, 7 Oct 2011 08:32:15 +0000 (+0200) Subject: x86/AMD: Do not enable ARAT feature on AMD processors below family 0x12 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=fa114e8cb13b427eb7f82e19e8d4615b8113eaf7;p=xen.git x86/AMD: Do not enable ARAT feature on AMD processors below family 0x12 Determining whether an AMD processor is affected by erratum 400 may have some corner cases and handling these cases is somewhat complicated. In the interest of simplicity we won't claim ARAT support on processor families below 0x12. Mirrors Linux commit e9cdd343a5e42c43bcda01e609fa23089e026470 Signed-off-by: Boris Ostrovsky Committed-by: Jan Beulich --- diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c index 6849d6a4db..3750c7a9de 100644 --- a/xen/arch/x86/cpu/amd.c +++ b/xen/arch/x86/cpu/amd.c @@ -495,8 +495,11 @@ static void __devinit init_amd(struct cpuinfo_x86 *c) } #endif - /* As a rule processors have APIC timer running in deep C states */ - if (c->x86 > 0xf && !cpu_has_amd_erratum(c, AMD_ERRATUM_400)) + /* + * Family 0x12 and above processors have APIC timer + * running in deep C states. + */ + if (c->x86 > 0x11) set_bit(X86_FEATURE_ARAT, c->x86_capability); if (cpuid_edx(0x80000007) & (1 << 10)) {