sched/smp: Use the SMP version of __task_needs_rq_lock()
Simplify the scheduler by making CONFIG_SMP=y code in __task_needs_rq_lock() unconditional. Signed-off-by: Ingo Molnar <mingo@kernel.org> Acked-by: Peter Zijlstra <peterz@infradead.org> Cc: Dietmar Eggemann <dietmar.eggemann@arm.com> Cc: Juri Lelli <juri.lelli@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mel Gorman <mgorman@suse.de> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: Shrikanth Hegde <sshegde@linux.ibm.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Valentin Schneider <vschneid@redhat.com> Cc: Vincent Guittot <vincent.guittot@linaro.org> Link: https://lore.kernel.org/r/20250528080924.2273858-25-mingo@kernel.orgpull/1309/head
parent
d0a0a055a5
commit
8039addbe5
|
|
@ -4312,14 +4312,12 @@ static bool __task_needs_rq_lock(struct task_struct *p)
|
||||||
if (p->on_rq)
|
if (p->on_rq)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
|
||||||
/*
|
/*
|
||||||
* Ensure the task has finished __schedule() and will not be referenced
|
* Ensure the task has finished __schedule() and will not be referenced
|
||||||
* anymore. Again, see try_to_wake_up() for a longer comment.
|
* anymore. Again, see try_to_wake_up() for a longer comment.
|
||||||
*/
|
*/
|
||||||
smp_rmb();
|
smp_rmb();
|
||||||
smp_cond_load_acquire(&p->on_cpu, !VAL);
|
smp_cond_load_acquire(&p->on_cpu, !VAL);
|
||||||
#endif
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue