mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 10:11:38 -04:00
smp: Get this_cpu once in smp_call_function
smp_call_function_single() and smp_call_function_many_cond() disable preemption and cache the CPU number via get_cpu(). Use this cached value throughout the function instead of invoking smp_processor_id() again. [ tglx: Make the copy&pasta'ed change log match the patch ] Signed-off-by: Shrikanth Hegde <sshegde@linux.ibm.com> Signed-off-by: Thomas Gleixner <tglx@kernel.org> Reviewed-by: Mukesh Kumar Chaurasiya (IBM) <mkchauras@gmail.com> Link: https://patch.msgid.link/20260323193630.640311-4-sshegde@linux.ibm.com
This commit is contained in:
committed by
Thomas Gleixner
parent
cc5623947f
commit
ec39780d6a
@@ -678,7 +678,7 @@ int smp_call_function_single(int cpu, smp_call_func_t func, void *info,
|
||||
csd->func = func;
|
||||
csd->info = info;
|
||||
#ifdef CONFIG_CSD_LOCK_WAIT_DEBUG
|
||||
csd->node.src = smp_processor_id();
|
||||
csd->node.src = this_cpu;
|
||||
csd->node.dst = cpu;
|
||||
#endif
|
||||
|
||||
@@ -833,7 +833,7 @@ static void smp_call_function_many_cond(const struct cpumask *mask,
|
||||
csd->func = func;
|
||||
csd->info = info;
|
||||
#ifdef CONFIG_CSD_LOCK_WAIT_DEBUG
|
||||
csd->node.src = smp_processor_id();
|
||||
csd->node.src = this_cpu;
|
||||
csd->node.dst = cpu;
|
||||
#endif
|
||||
trace_csd_queue_cpu(cpu, _RET_IP_, func, csd);
|
||||
|
||||
Reference in New Issue
Block a user