]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 3 Sep 2018 13:06:39 +0000 (15:06 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 3 Sep 2018 13:06:39 +0000 (15:06 +0200)
added patches:
x86-irqflags-mark-native_restore_fl-extern-inline.patch
x86-spectre-add-missing-family-6-check-to-microcode-check.patch

queue-4.4/series
queue-4.4/x86-irqflags-mark-native_restore_fl-extern-inline.patch [new file with mode: 0644]
queue-4.4/x86-spectre-add-missing-family-6-check-to-microcode-check.patch [new file with mode: 0644]

index 3201a8e7e5b36b059c0e1ce3ac6027289ccd3fa0..a79f4787fa6495989cbe6efd65a0aabc2ff75254 100644 (file)
@@ -66,3 +66,5 @@ udl-kms-fix-crash-due-to-uninitialized-memory.patch
 asoc-dpcm-don-t-merge-format-from-invalid-codec-dai.patch
 asoc-sirf-fix-potential-null-pointer-dereference.patch
 pinctrl-freescale-off-by-one-in-imx1_pinconf_group_dbg_show.patch
+x86-irqflags-mark-native_restore_fl-extern-inline.patch
+x86-spectre-add-missing-family-6-check-to-microcode-check.patch
diff --git a/queue-4.4/x86-irqflags-mark-native_restore_fl-extern-inline.patch b/queue-4.4/x86-irqflags-mark-native_restore_fl-extern-inline.patch
new file mode 100644 (file)
index 0000000..fb6b264
--- /dev/null
@@ -0,0 +1,40 @@
+From 1f59a4581b5ecfe9b4f049a7a2cf904d8352842d Mon Sep 17 00:00:00 2001
+From: Nick Desaulniers <ndesaulniers@google.com>
+Date: Mon, 27 Aug 2018 14:40:09 -0700
+Subject: x86/irqflags: Mark native_restore_fl extern inline
+
+From: Nick Desaulniers <ndesaulniers@google.com>
+
+commit 1f59a4581b5ecfe9b4f049a7a2cf904d8352842d upstream.
+
+This should have been marked extern inline in order to pick up the out
+of line definition in arch/x86/kernel/irqflags.S.
+
+Fixes: 208cbb325589 ("x86/irqflags: Provide a declaration for native_save_fl")
+Reported-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
+Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Juergen Gross <jgross@suse.com>
+Cc: "H. Peter Anvin" <hpa@zytor.com>
+Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
+Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Cc: stable@vger.kernel.org
+Link: https://lkml.kernel.org/r/20180827214011.55428-1-ndesaulniers@google.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/include/asm/irqflags.h |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/arch/x86/include/asm/irqflags.h
++++ b/arch/x86/include/asm/irqflags.h
+@@ -28,7 +28,8 @@ extern inline unsigned long native_save_
+       return flags;
+ }
+-static inline void native_restore_fl(unsigned long flags)
++extern inline void native_restore_fl(unsigned long flags);
++extern inline void native_restore_fl(unsigned long flags)
+ {
+       asm volatile("push %0 ; popf"
+                    : /* no output */
diff --git a/queue-4.4/x86-spectre-add-missing-family-6-check-to-microcode-check.patch b/queue-4.4/x86-spectre-add-missing-family-6-check-to-microcode-check.patch
new file mode 100644 (file)
index 0000000..7a241c8
--- /dev/null
@@ -0,0 +1,39 @@
+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
+@@ -74,6 +74,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_mask == spectre_bad_microcodes[i].stepping)