diff options
| -rw-r--r-- | arch/x86/kernel/alternative.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/arch/x86/kernel/alternative.c b/arch/x86/kernel/alternative.c index 7038b95d363f..4db35544de73 100644 --- a/arch/x86/kernel/alternative.c +++ b/arch/x86/kernel/alternative.c @@ -620,7 +620,12 @@ static int __kprobes stop_machine_text_poke(void *data)  		flush_icache_range((unsigned long)p->addr,  				   (unsigned long)p->addr + p->len);  	} - +	/* +	 * Intel Archiecture Software Developer's Manual section 7.1.3 specifies +	 * that a core serializing instruction such as "cpuid" should be +	 * executed on _each_ core before the new instruction is made visible. +	 */ +	sync_core();  	return 0;  } | 
