]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop broken s390 patch from 4.4 queue
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 07:53:19 +0000 (08:53 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2019 07:53:19 +0000 (08:53 +0100)
queue-4.4/s390-smp-fix-calling-smp_call_ipl_cpu-from-ipl-cpu.patch [deleted file]
queue-4.4/series

diff --git a/queue-4.4/s390-smp-fix-calling-smp_call_ipl_cpu-from-ipl-cpu.patch b/queue-4.4/s390-smp-fix-calling-smp_call_ipl_cpu-from-ipl-cpu.patch
deleted file mode 100644 (file)
index 4550167..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-From 60f1bf29c0b2519989927cae640cd1f50f59dc7f Mon Sep 17 00:00:00 2001
-From: David Hildenbrand <david@redhat.com>
-Date: Fri, 11 Jan 2019 15:18:22 +0100
-Subject: s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU
-
-From: David Hildenbrand <david@redhat.com>
-
-commit 60f1bf29c0b2519989927cae640cd1f50f59dc7f upstream.
-
-When calling smp_call_ipl_cpu() from the IPL CPU, we will try to read
-from pcpu_devices->lowcore. However, due to prefixing, that will result
-in reading from absolute address 0 on that CPU. We have to go via the
-actual lowcore instead.
-
-This means that right now, we will read lc->nodat_stack == 0 and
-therfore work on a very wrong stack.
-
-This BUG essentially broke rebooting under QEMU TCG (which will report
-a low address protection exception). And checking under KVM, it is
-also broken under KVM. With 1 VCPU it can be easily triggered.
-
-:/# echo 1 > /proc/sys/kernel/sysrq
-:/# echo b > /proc/sysrq-trigger
-[   28.476745] sysrq: SysRq : Resetting
-[   28.476793] Kernel stack overflow.
-[   28.476817] CPU: 0 PID: 424 Comm: sh Not tainted 5.0.0-rc1+ #13
-[   28.476820] Hardware name: IBM 2964 NE1 716 (KVM/Linux)
-[   28.476826] Krnl PSW : 0400c00180000000 0000000000115c0c (pcpu_delegate+0x12c/0x140)
-[   28.476861]            R:0 T:1 IO:0 EX:0 Key:0 M:0 W:0 P:0 AS:3 CC:0 PM:0 RI:0 EA:3
-[   28.476863] Krnl GPRS: ffffffffffffffff 0000000000000000 000000000010dff8 0000000000000000
-[   28.476864]            0000000000000000 0000000000000000 0000000000ab7090 000003e0006efbf0
-[   28.476864]            000000000010dff8 0000000000000000 0000000000000000 0000000000000000
-[   28.476865]            000000007fffc000 0000000000730408 000003e0006efc58 0000000000000000
-[   28.476887] Krnl Code: 0000000000115bfe: 4170f000            la      %r7,0(%r15)
-[   28.476887]            0000000000115c02: 41f0a000            la      %r15,0(%r10)
-[   28.476887]           #0000000000115c06: e370f0980024        stg     %r7,152(%r15)
-[   28.476887]           >0000000000115c0c: c0e5fffff86e        brasl   %r14,114ce8
-[   28.476887]            0000000000115c12: 41f07000            la      %r15,0(%r7)
-[   28.476887]            0000000000115c16: a7f4ffa8            brc     15,115b66
-[   28.476887]            0000000000115c1a: 0707                bcr     0,%r7
-[   28.476887]            0000000000115c1c: 0707                bcr     0,%r7
-[   28.476901] Call Trace:
-[   28.476902] Last Breaking-Event-Address:
-[   28.476920]  [<0000000000a01c4a>] arch_call_rest_init+0x22/0x80
-[   28.476927] Kernel panic - not syncing: Corrupt kernel stack, can't continue.
-[   28.476930] CPU: 0 PID: 424 Comm: sh Not tainted 5.0.0-rc1+ #13
-[   28.476932] Hardware name: IBM 2964 NE1 716 (KVM/Linux)
-[   28.476932] Call Trace:
-
-Fixes: 2f859d0dad81 ("s390/smp: reduce size of struct pcpu")
-Cc: stable@vger.kernel.org # 4.0+
-Reported-by: Cornelia Huck <cohuck@redhat.com>
-Signed-off-by: David Hildenbrand <david@redhat.com>
-Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
-
----
- arch/s390/kernel/smp.c |    8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
---- a/arch/s390/kernel/smp.c
-+++ b/arch/s390/kernel/smp.c
-@@ -360,9 +360,13 @@ void smp_call_online_cpu(void (*func)(vo
-  */
- void smp_call_ipl_cpu(void (*func)(void *), void *data)
- {
-+      struct lowcore *lc = pcpu_devices->lowcore;
-+
-+      if (pcpu_devices[0].address == stap())
-+              lc = &S390_lowcore;
-+
-       pcpu_delegate(&pcpu_devices[0], func, data,
--                    pcpu_devices->lowcore->panic_stack -
--                    PANIC_FRAME_OFFSET + PAGE_SIZE);
-+                    lc->panic_stack - PANIC_FRAME_OFFSET + PAGE_SIZE);
- }
- int smp_find_processor_id(u16 address)
index 781eb37ca7548f0e5ebaeea59c2efdd417670b70..56fe02842758aad94de13e0a5acd650f13db6c37 100644 (file)
@@ -24,7 +24,6 @@ vt-invoke-notifier-on-screen-size-change.patch
 perf-unwind-unwind-with-libdw-doesn-t-take-symfs-int.patch
 perf-unwind-take-pgoff-into-account-when-reporting-e.patch
 irqchip-gic-v3-its-align-pci-multi-msi-allocation-on-their-size.patch
-s390-smp-fix-calling-smp_call_ipl_cpu-from-ipl-cpu.patch
 arm64-mm-remove-page_mapping-check-in-__sync_icache_dcache.patch
 f2fs-read-page-index-before-freeing.patch
 0001-Revert-loop-Fix-double-mutex_unlock-loop_ctl_mutex-i.patch