| From 1ab534e85c93945f7862378d8c8adcf408205b19 Mon Sep 17 00:00:00 2001 |
| From: Andi Kleen <ak@linux.intel.com> |
| Date: Fri, 24 Aug 2018 10:03:51 -0700 |
| Subject: x86/spectre: Add missing family 6 check to microcode check |
| |
| From: Andi Kleen <ak@linux.intel.com> |
| |
| commit 1ab534e85c93945f7862378d8c8adcf408205b19 upstream. |
| |
| The check for Spectre microcodes does not check for family 6, only the |
| model numbers. |
| |
| Add a family 6 check to avoid ambiguity with other families. |
| |
| Fixes: a5b296636453 ("x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes") |
| Signed-off-by: Andi Kleen <ak@linux.intel.com> |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| Cc: x86@kernel.org |
| Cc: linux-kernel@vger.kernel.org |
| Cc: stable@vger.kernel.org |
| Link: https://lkml.kernel.org/r/20180824170351.34874-2-andi@firstfloor.org |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/x86/kernel/cpu/intel.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| --- a/arch/x86/kernel/cpu/intel.c |
| +++ b/arch/x86/kernel/cpu/intel.c |
| @@ -150,6 +150,9 @@ static bool bad_spectre_microcode(struct |
| if (cpu_has(c, X86_FEATURE_HYPERVISOR)) |
| return false; |
| |
| + if (c->x86 != 6) |
| + return false; |
| + |
| for (i = 0; i < ARRAY_SIZE(spectre_bad_microcodes); i++) { |
| if (c->x86_model == spectre_bad_microcodes[i].model && |
| c->x86_stepping == spectre_bad_microcodes[i].stepping) |