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

Commit ce47d974 authored by Rusty Russell's avatar Rusty Russell
Browse files

cpumask: arch_send_call_function_ipi_mask: core



Impact: new API to reduce stack usage

We're weaning the core code off handing cpumask's around on-stack.
This introduces arch_send_call_function_ipi_mask().

Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
parent 54b11e6d
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -266,6 +266,12 @@ void __smp_call_function_single(int cpu, struct call_single_data *data)
	generic_exec_single(cpu, data);
}

/* FIXME: Shim for archs using old arch_send_call_function_ipi API. */
#ifndef arch_send_call_function_ipi_mask
#define arch_send_call_function_ipi_mask(maskp) \
	arch_send_call_function_ipi(*(maskp))
#endif

/**
 * smp_call_function_many(): Run a function on a set of other CPUs.
 * @mask: The set of cpus to run on (only runs on online subset).
@@ -343,7 +349,7 @@ void smp_call_function_many(const struct cpumask *mask,
	smp_mb();

	/* Send a message to all CPUs in the map */
	arch_send_call_function_ipi(*to_cpumask(data->cpumask_bits));
	arch_send_call_function_ipi_mask(to_cpumask(data->cpumask_bits));

	/* optionally wait for the CPUs to complete */
	if (wait)