[PATCH 2/2] powerpc/xive: fix cpu removal
Cédric Le Goater
clg at kaod.org
Sat Sep 23 18:26:56 AEST 2017
When a CPU is hot unplugged, the IPI interrupt source should be
deconfigured and the event queue cleared.
Signed-off-by: Cédric Le Goater <clg at kaod.org>
---
arch/powerpc/sysdev/xive/common.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/powerpc/sysdev/xive/common.c b/arch/powerpc/sysdev/xive/common.c
index 1c087ed7427f..b9440ac7a3c1 100644
--- a/arch/powerpc/sysdev/xive/common.c
+++ b/arch/powerpc/sysdev/xive/common.c
@@ -1398,6 +1398,14 @@ void xive_teardown_cpu(void)
if (xive_ops->teardown_cpu)
xive_ops->teardown_cpu(cpu, xc);
+
+#ifdef CONFIG_SMP
+ /* Get rid of IPI */
+ xive_cleanup_cpu_ipi(cpu, xc);
+#endif
+
+ /* Disable and free the queues */
+ xive_cleanup_cpu_queues(cpu, xc);
}
void xive_kexec_teardown_cpu(int secondary)
--
2.13.5
More information about the Linuxppc-dev
mailing list