diff options
Diffstat (limited to 'arch/x86/kernel/process.c')
| -rw-r--r-- | arch/x86/kernel/process.c | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c index b8441147eb5e..f63f8fd00a91 100644 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c @@ -835,6 +835,13 @@ void __noreturn stop_this_cpu(void *dummy)  	 */  	cpumask_clear_cpu(cpu, &cpus_stop_mask); +#ifdef CONFIG_SMP +	if (smp_ops.stop_this_cpu) { +		smp_ops.stop_this_cpu(); +		unreachable(); +	} +#endif +  	for (;;) {  		/*  		 * Use native_halt() so that memory contents don't change  |