From: Greg Kroah-Hartman Date: Wed, 24 Jan 2018 08:59:56 +0000 (+0100) Subject: 3.18-stable patches X-Git-Tag: v4.4.114~57 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=976191fd433fa35a7d666e295d81ed14f659f665;p=thirdparty%2Fkernel%2Fstable-queue.git 3.18-stable patches added patches: x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch --- diff --git a/queue-3.18/series b/queue-3.18/series index 480081c515f..044db55fe7e 100644 --- a/queue-3.18/series +++ b/queue-3.18/series @@ -17,3 +17,4 @@ dm-btree-fix-serious-bug-in-btree_split_beneath.patch dm-thin-metadata-thin_max_concurrent_locks-should-be-6.patch arm64-kvm-fix-smccc-handling-of-unimplemented-smc-hvc-calls.patch mips-ar7-ensure-the-port-type-s-fcr-value-is-used.patch +x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch diff --git a/queue-3.18/x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch b/queue-3.18/x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch new file mode 100644 index 00000000000..65a4217b22e --- /dev/null +++ b/queue-3.18/x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch @@ -0,0 +1,43 @@ +From 1c52d859cb2d417e7216d3e56bb7fea88444cec9 Mon Sep 17 00:00:00 2001 +From: Andy Lutomirski +Date: Fri, 9 Dec 2016 10:24:05 -0800 +Subject: x86/asm/32: Make sync_core() handle missing CPUID on all 32-bit kernels + +From: Andy Lutomirski + +commit 1c52d859cb2d417e7216d3e56bb7fea88444cec9 upstream. + +We support various non-Intel CPUs that don't have the CPUID +instruction, so the M486 test was wrong. For now, fix it with a big +hammer: handle missing CPUID on all 32-bit CPUs. + +Reported-by: One Thousand Gnomes +Signed-off-by: Andy Lutomirski +Cc: Juergen Gross +Cc: Peter Zijlstra +Cc: Brian Gerst +Cc: Matthew Whitehead +Cc: Borislav Petkov +Cc: Henrique de Moraes Holschuh +Cc: Andrew Cooper +Cc: Boris Ostrovsky +Cc: xen-devel +Link: http://lkml.kernel.org/r/685bd083a7c036f7769510b6846315b17d6ba71f.1481307769.git.luto@kernel.org +Signed-off-by: Thomas Gleixner +Signed-off-by: Greg Kroah-Hartman + +--- + arch/x86/include/asm/processor.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/x86/include/asm/processor.h ++++ b/arch/x86/include/asm/processor.h +@@ -669,7 +669,7 @@ static inline void sync_core(void) + { + int tmp; + +-#ifdef CONFIG_M486 ++#ifdef CONFIG_X86_32 + /* + * Do a CPUID if available, otherwise do a jump. The jump + * can conveniently enough be the jump around CPUID. diff --git a/queue-4.14/series b/queue-4.14/series new file mode 100644 index 00000000000..e69de29bb2d diff --git a/queue-4.4/series b/queue-4.4/series new file mode 100644 index 00000000000..e2d6ad978ed --- /dev/null +++ b/queue-4.4/series @@ -0,0 +1 @@ +x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch diff --git a/queue-4.9/series b/queue-4.9/series new file mode 100644 index 00000000000..e2d6ad978ed --- /dev/null +++ b/queue-4.9/series @@ -0,0 +1 @@ +x86-asm-32-make-sync_core-handle-missing-cpuid-on-all-32-bit-kernels.patch