Lines Matching +full:function +full:- +full:mask
1 /* SPDX-License-Identifier: GPL-2.0 */
54 void *info, bool wait, const struct cpumask *mask);
60 * Architecture-dependent code may override them.
67 * Call a function on all processors
75 * on_each_cpu_mask(): Run a function on processors specified by
77 * @mask: The set of cpus to run on (only runs on online subset).
78 * @func: The function to run. This must be fast and non-blocking.
79 * @info: An arbitrary pointer to pass to the function.
80 * @wait: If true, wait (atomically) until function has completed
85 * You must not call this function with disabled interrupts or from a
90 static inline void on_each_cpu_mask(const struct cpumask *mask, in on_each_cpu_mask() argument
93 on_each_cpu_cond_mask(NULL, func, info, wait, mask); in on_each_cpu_mask()
97 * Call a function on each processor for which the supplied function
116 * main cross-CPU interfaces, handles INIT, TLB flush, STOP, etc.
131 * callsite IP should be sufficient for root-causing IPIs sent from here.
154 * Call a function on all other processors
157 void smp_call_function_many(const struct cpumask *mask,
160 int smp_call_function_any(const struct cpumask *mask,
176 * printk() and can access its per-cpu storage.
207 #define smp_call_function_many(mask, func, info, wait) \ argument
212 smp_call_function_any(const struct cpumask *mask, smp_call_func_t func, in smp_call_function_any() argument
236 * raw_processor_id() - get the current (unstable) CPU id
243 * smp_processor_id() - get the current (stable) CPU id
250 * - IRQs are disabled;
251 * - preemption is disabled;
252 * - the task is CPU affine.
260 * For example, x86 uses an IRQ-safe asm-volatile read for the unstable but a