Fix ppc64 boot with smt-enabled=off (rhbz 1173806)
This commit is contained in:
parent
32f1e15e15
commit
2b541ad477
@ -630,6 +630,9 @@ Patch26099: deal-with-deadlock-in-d_walk.patch
|
||||
#CVE-2014-8133 rhbz 1172797 1174374
|
||||
Patch26100: x86-tls-Validate-TLS-entries-to-protect-espfix.patch
|
||||
|
||||
#rhbz 1173806
|
||||
Patch26101: powerpc-powernv-force-all-CPUs-to-be-bootable.patch
|
||||
|
||||
# git clone ssh://git.fedorahosted.org/git/kernel-arm64.git, git diff master...devel
|
||||
Patch30000: kernel-arm64.patch
|
||||
|
||||
@ -1369,6 +1372,9 @@ ApplyPatch deal-with-deadlock-in-d_walk.patch
|
||||
#CVE-2014-8133 rhbz 1172797 1174374
|
||||
ApplyPatch x86-tls-Validate-TLS-entries-to-protect-espfix.patch
|
||||
|
||||
#rhbz 1173806
|
||||
ApplyPatch powerpc-powernv-force-all-CPUs-to-be-bootable.patch
|
||||
|
||||
%if 0%{?aarch64patches}
|
||||
ApplyPatch kernel-arm64.patch
|
||||
%ifnarch aarch64 # this is stupid, but i want to notice before secondary koji does.
|
||||
@ -2238,6 +2244,7 @@ fi
|
||||
# || ||
|
||||
%changelog
|
||||
* Mon Dec 15 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Fix ppc64 boot with smt-enabled=off (rhbz 1173806)
|
||||
- CVE-2014-8133 x86: espfix(64) bypass via set_thread_area and CLONE_SETTLS (rhbz 1172797 1174374)
|
||||
- CVE-2014-8559 deadlock due to incorrect usage of rename_lock (rhbz 1159313 1173814)
|
||||
|
||||
|
46
powerpc-powernv-force-all-CPUs-to-be-bootable.patch
Normal file
46
powerpc-powernv-force-all-CPUs-to-be-bootable.patch
Normal file
@ -0,0 +1,46 @@
|
||||
From: Greg Kurz <gkurz@linux.vnet.ibm.com>
|
||||
Date: Fri, 12 Dec 2014 12:37:40 +0100
|
||||
Subject: [PATCH] powerpc/powernv: force all CPUs to be bootable
|
||||
|
||||
The subcore logic needs all the CPUs declared in the DT to be bootable,
|
||||
otherwise the kernel hangs at boot time. Since subcore support starts
|
||||
with POWER8, we can keep the current behaviour for older CPUs.
|
||||
|
||||
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
|
||||
---
|
||||
arch/powerpc/platforms/powernv/smp.c | 13 ++++++++++++-
|
||||
1 file changed, 12 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/powerpc/platforms/powernv/smp.c b/arch/powerpc/platforms/powernv/smp.c
|
||||
index 4753958cd509..44ecd0925f56 100644
|
||||
--- a/arch/powerpc/platforms/powernv/smp.c
|
||||
+++ b/arch/powerpc/platforms/powernv/smp.c
|
||||
@@ -185,13 +185,24 @@ static void pnv_smp_cpu_kill_self(void)
|
||||
|
||||
#endif /* CONFIG_HOTPLUG_CPU */
|
||||
|
||||
+static int pnv_cpu_bootable(unsigned int nr)
|
||||
+{
|
||||
+ /* Starting with POWER8, all CPUs need to be booted to avoid hangs
|
||||
+ * during subcore init.
|
||||
+ */
|
||||
+ if (cpu_has_feature(CPU_FTR_ARCH_207S))
|
||||
+ return 1;
|
||||
+
|
||||
+ return smp_generic_cpu_bootable(nr);
|
||||
+}
|
||||
+
|
||||
static struct smp_ops_t pnv_smp_ops = {
|
||||
.message_pass = smp_muxed_ipi_message_pass,
|
||||
.cause_ipi = NULL, /* Filled at runtime by xics_smp_probe() */
|
||||
.probe = xics_smp_probe,
|
||||
.kick_cpu = pnv_smp_kick_cpu,
|
||||
.setup_cpu = pnv_smp_setup_cpu,
|
||||
- .cpu_bootable = smp_generic_cpu_bootable,
|
||||
+ .cpu_bootable = pnv_cpu_bootable,
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
.cpu_disable = pnv_smp_cpu_disable,
|
||||
.cpu_die = generic_cpu_die,
|
||||
--
|
||||
2.1.0
|
||||
|
Loading…
Reference in New Issue
Block a user