* [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target
@ 2015-03-23 9:02 Wanpeng Li
2015-03-26 23:03 ` Wanpeng Li
0 siblings, 1 reply; 3+ messages in thread
From: Wanpeng Li @ 2015-03-23 9:02 UTC (permalink / raw)
To: Ingo Molnar, Peter Zijlstra; +Cc: Juri Lelli, linux-kernel, Wanpeng Li
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@linux.intel.com>
---
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
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target
2015-03-23 9:02 [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target Wanpeng Li
@ 2015-03-26 23:03 ` Wanpeng Li
2015-04-07 9:38 ` Wanpeng Li
0 siblings, 1 reply; 3+ messages in thread
From: Wanpeng Li @ 2015-03-26 23:03 UTC (permalink / raw)
To: Juri Lelli; +Cc: Ingo Molnar, Peter Zijlstra, linux-kernel, Wanpeng Li
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@linux.intel.com>
>---
>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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target
2015-03-26 23:03 ` Wanpeng Li
@ 2015-04-07 9:38 ` Wanpeng Li
0 siblings, 0 replies; 3+ messages in thread
From: Wanpeng Li @ 2015-04-07 9:38 UTC (permalink / raw)
To: Peter Zijlstra; +Cc: Ingo Molnar, Juri Lelli, linux-kernel, Wanpeng Li
Ping Peter, this patch is collected into this patchset https://lkml.org/lkml/2015/4/6/44
On Fri, Mar 27, 2015 at 07:03:00AM +0800, Wanpeng Li wrote:
>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@linux.intel.com>
>>---
>>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
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-04-07 9:57 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-23 9:02 [PATCH v2] sched/deadline: reduce rq lock contention by eliminating locking of non-feasible target Wanpeng Li
2015-03-26 23:03 ` Wanpeng Li
2015-04-07 9:38 ` Wanpeng Li
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox