sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target
PATCH 1/1 sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target
This patch adds checks that prevents futile attempts to move dl tasks to a CPU with active tasks of equal or earlier deadline. The same behavior as commit 80e3d87b2c55 ("sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target") for rt class.
Signed-off-by Wanpeng Li <[email protected]>
--- kernel/sched/deadline.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
kernel/sched/deadline.c +2 -1
@@ -955,7 +955,8 @@ select_task_rq_dl(struct task_struct *p, int cpu, int sd_flag, int flags) (p->nr_cpus_allowed > 1)) {int target =find_later_rq (p); -if (target !=-1 ) +if (target !=-1 && + p->dl.deadline <cpu_rq (target)->dl.earliest_dl.curr) cpu = target; }rcu_read_unlock ();
Signature · 1 line
1.9.1