From: Anna-Maria Gleixner Since the following commit: 1cf4f629d9d2 ("cpu/hotplug: Move online calls to hotplugged cpu") ... the CPU_ONLINE and CPU_DOWN_PREPARE notifiers are always run on the hot plugged CPU, and as of commit: 3b9d6da67e11 ("cpu/hotplug: Fix rollback during error-out in __cpu_disable()") the CPU_DOWN_FAILED notifier also runs on the hot plugged CPU. This patch converts the SMP functional calls into direct calls. smp_function_call_single() executes the function with interrupts disabled. This calling convention is not preserved because there is no reason to do so. Signed-off-by: Anna-Maria Gleixner Cc: Linus Torvalds Cc: Paolo Bonzini Cc: Peter Zijlstra Cc: Radim Krcmar Cc: Thomas Gleixner Cc: kvm@vger.kernel.org --- arch/x86/kvm/x86.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -5662,15 +5662,13 @@ static struct notifier_block kvmclock_cp static int kvmclock_cpu_notifier(struct notifier_block *nfb, unsigned long action, void *hcpu) { - unsigned int cpu = (unsigned long)hcpu; - switch (action) { case CPU_ONLINE: case CPU_DOWN_FAILED: - smp_call_function_single(cpu, tsc_khz_changed, NULL, 1); + tsc_khz_changed(NULL); break; case CPU_DOWN_PREPARE: - smp_call_function_single(cpu, tsc_bad, NULL, 1); + tsc_bad(NULL); break; } return NOTIFY_OK;