Re: [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target

From: Wanpeng Li
Date: Thu Mar 26 2015 - 19:21:20 EST


Ping Juri, ;)
On Mon, Mar 23, 2015 at 05:02:13PM +0800, Wanpeng Li wrote:
>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 <wanpeng.li@xxxxxxxxxxxxxxx>
>---
>v1 -> v2:
> * use dl_time_before macro
>
> kernel/sched/deadline.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
>diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
>index 19d716e..f48d319 100644
>--- a/kernel/sched/deadline.c
>+++ b/kernel/sched/deadline.c
>@@ -955,7 +955,9 @@ 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 &&
>+ dl_time_before(p->dl.deadline,
>+ cpu_rq(target)->dl.earliest_dl.curr))
> cpu = target;
> }
> rcu_read_unlock();
>--
>1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/