[tip: x86/mm] smp: Micro-optimize smp_call_function_many_cond()

From: tip-bot2 for Ingo Molnar
Date: Tue Mar 02 2021 - 05:13:06 EST


The following commit has been merged into the x86/mm branch of tip:

Commit-ID: dd75cba56151cb3b9dc7eac0221c9b1967f6ddb5
Gitweb: https://git.kernel.org/tip/dd75cba56151cb3b9dc7eac0221c9b1967f6ddb5
Author: Ingo Molnar <mingo@xxxxxxxxxx>
AuthorDate: Tue, 02 Mar 2021 08:02:43 +01:00
Committer: Ingo Molnar <mingo@xxxxxxxxxx>
CommitterDate: Tue, 02 Mar 2021 09:09:59 +01:00

smp: Micro-optimize smp_call_function_many_cond()

Call the generic send_call_function_single_ipi() function, which
will avoid the IPI when @last_cpu is idle.

Signed-off-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
Cc: linux-kernel@xxxxxxxxxxxxxxx
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
---
kernel/smp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/smp.c b/kernel/smp.c
index b6375d7..af0d51d 100644
--- a/kernel/smp.c
+++ b/kernel/smp.c
@@ -694,7 +694,7 @@ static void smp_call_function_many_cond(const struct cpumask *mask,
* provided mask.
*/
if (nr_cpus == 1)
- arch_send_call_function_single_ipi(last_cpu);
+ send_call_function_single_ipi(last_cpu);
else if (likely(nr_cpus > 1))
arch_send_call_function_ipi_mask(cfd->cpumask_ipi);
}