diff options
author | David S. Miller <davem@davemloft.net> | 2012-11-25 18:49:17 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-11-25 18:49:17 +0100 |
commit | 24bc518a6888e4c97add5a5ebbff11c1ccac219f (patch) | |
tree | d125270f4e8432cebcbc8af9079dece51dd798a0 /arch/x86/kernel/cpu/amd.c | |
parent | net/macb: GEM DMA configuration register update (diff) | |
parent | Merge tag 'sound-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/... (diff) | |
download | linux-24bc518a6888e4c97add5a5ebbff11c1ccac219f.tar.xz linux-24bc518a6888e4c97add5a5ebbff11c1ccac219f.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
drivers/net/wireless/iwlwifi/pcie/tx.c
Minor iwlwifi conflict in TX queue disabling between 'net', which
removed a bogus warning, and 'net-next' which added some status
register poking code.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/x86/kernel/cpu/amd.c')
-rw-r--r-- | arch/x86/kernel/cpu/amd.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index f7e98a2c0d12..1b7d1656a042 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c @@ -631,6 +631,20 @@ static void __cpuinit init_amd(struct cpuinfo_x86 *c) } } + /* + * The way access filter has a performance penalty on some workloads. + * Disable it on the affected CPUs. + */ + if ((c->x86 == 0x15) && + (c->x86_model >= 0x02) && (c->x86_model < 0x20)) { + u64 val; + + if (!rdmsrl_safe(0xc0011021, &val) && !(val & 0x1E)) { + val |= 0x1E; + wrmsrl_safe(0xc0011021, val); + } + } + cpu_detect_cache_sizes(c); /* Multi core CPU? */ |