diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-20 12:11:41 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-20 12:11:41 -0800 |
commit | 7fe67a1180db49d41a3f764c379a08f8e31580ec (patch) | |
tree | 41a6f78958d5a6e63791a889daaa1a9633150a49 /arch/x86/kernel/cpu | |
parent | fab5669d556200c4dd119af705bff14085845d1e (diff) | |
parent | da6139e49c7cb0f4251265cb5243b8d220adb48d (diff) | |
download | linux-stable-7fe67a1180db49d41a3f764c379a08f8e31580ec.tar.gz linux-stable-7fe67a1180db49d41a3f764c379a08f8e31580ec.tar.bz2 linux-stable-7fe67a1180db49d41a3f764c379a08f8e31580ec.zip |
Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull leftover x86 fixes from Ingo Molnar:
"Two leftover fixes that did not make it into v3.13"
* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86: Add check for number of available vectors before CPU down
x86, cpu, amd: Add workaround for family 16h, erratum 793
Diffstat (limited to 'arch/x86/kernel/cpu')
-rw-r--r-- | arch/x86/kernel/cpu/amd.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index 525712c7ffa2..d3153e281d72 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c @@ -507,6 +507,16 @@ static void early_init_amd(struct cpuinfo_x86 *c) set_cpu_cap(c, X86_FEATURE_EXTD_APICID); } #endif + + /* F16h erratum 793, CVE-2013-6885 */ + if (c->x86 == 0x16 && c->x86_model <= 0xf) { + u64 val; + + rdmsrl(MSR_AMD64_LS_CFG, val); + if (!(val & BIT(15))) + wrmsrl(MSR_AMD64_LS_CFG, val | BIT(15)); + } + } static const int amd_erratum_383[]; |