[GIT pull] smp/hotplug fix for 4.14

From: Thomas Gleixner
Date: Sun Oct 22 2017 - 06:43:39 EST


Linus,

please pull the latest smp-urgent-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git smp-urgent-for-linus

The recent rework of the callback invocation missed to cleanup the
leftovers of the operation, so under certain circumstances a subsequent CPU
hotplug operation accesses stale data and crashes. Clean it up.

Thanks,

tglx

------------------>
Thomas Gleixner (1):
cpu/hotplug: Reset node state after operation


kernel/cpu.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/kernel/cpu.c b/kernel/cpu.c
index d851df22f5c5..04892a82f6ac 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -632,6 +632,11 @@ cpuhp_invoke_ap_callback(int cpu, enum cpuhp_state state, bool bringup,
__cpuhp_kick_ap(st);
}

+ /*
+ * Clean up the leftovers so the next hotplug operation wont use stale
+ * data.
+ */
+ st->node = st->last = NULL;
return ret;
}