Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit de489353 authored by Avi Kivity's avatar Avi Kivity
Browse files

i386: Allow smp_call_function_single() to current cpu



This removes the requirement for callers to get_cpu() to check in simple
cases.

Cc: Andi Kleen <ak@suse.de>
Signed-off-by: default avatarAvi Kivity <avi@qumranet.com>
parent 4055551b
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -47,7 +47,7 @@ int smp_call_function(void (*func) (void *info), void *info, int nonatomic,
EXPORT_SYMBOL(smp_call_function);

/**
 * smp_call_function_single - Run a function on another CPU
 * smp_call_function_single - Run a function on a specific CPU
 * @cpu: The target CPU.  Cannot be the calling CPU.
 * @func: The function to run. This must be fast and non-blocking.
 * @info: An arbitrary pointer to pass to the function.
@@ -66,9 +66,11 @@ int smp_call_function_single(int cpu, void (*func) (void *info), void *info,
	int ret;
	int me = get_cpu();
	if (cpu == me) {
		WARN_ON(1);
		local_irq_disable();
		func(info);
		local_irq_enable();
		put_cpu();
		return -EBUSY;
		return 0;
	}

	ret = smp_call_function_mask(cpumask_of_cpu(cpu), func, info, wait);