diff options
Diffstat (limited to 'kernel/cpu.c')
| -rw-r--r-- | kernel/cpu.c | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/kernel/cpu.c b/kernel/cpu.c index 192e43a87407..407a2568f35e 100644 --- a/kernel/cpu.c +++ b/kernel/cpu.c @@ -31,6 +31,7 @@  #include <linux/smpboot.h>  #include <linux/relay.h>  #include <linux/slab.h> +#include <linux/scs.h>  #include <linux/percpu-rwsem.h>  #include <linux/cpuset.h> @@ -588,6 +589,12 @@ static int bringup_cpu(unsigned int cpu)  	int ret;  	/* +	 * Reset stale stack state from the last time this CPU was online. +	 */ +	scs_task_reset(idle); +	kasan_unpoison_task_stack(idle); + +	/*  	 * Some architectures have to walk the irq descriptors to  	 * setup the vector space for the cpu which comes online.  	 * Prevent irq alloc/free across the bringup. |