smp: Optimize send_call_function_single_ipi()

Just like the ttwu_queue_remote() IPI, make use of _TIF_POLLING_NRFLAG
to avoid sending IPIs to idle CPUs.

[ mingo: Fix UP build bug. ]

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20200526161907.953304789@infradead.org
This commit is contained in:
Peter Zijlstra
2020-05-26 18:11:01 +02:00
committed by Ingo Molnar
parent afaa653c56
commit b2a02fc43a
4 changed files with 34 additions and 4 deletions

View File

@@ -289,6 +289,11 @@ static void do_idle(void)
*/
smp_mb__after_atomic();
/*
* RCU relies on this call to be done outside of an RCU read-side
* critical section.
*/
flush_smp_call_function_from_idle();
sched_ttwu_pending();
schedule_idle();