* [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target @ 2015-01-06 19:01 Tim Chen 2015-01-06 19:30 ` Peter Zijlstra 2015-01-16 1:58 ` Steven Rostedt 0 siblings, 2 replies; 10+ messages in thread From: Tim Chen @ 2015-01-06 19:01 UTC (permalink / raw) To: Peter Zijlstra, Ingo Molnar Cc: Andi Kleen, Shawn Bohrer, Steven Rostedt, Suruchi Kadu, Doug Nelson, linux-kernel Didn't get any response for this patch probably due to the holidays. Reposting it as we will like to get it merged to help our database workload. This patch added checks that prevent futile attempts to move rt tasks to cpu with active tasks of equal or higher priority. This reduces run queue lock contention and improves the performance of a well known OLTP benchmark by 0.7%. Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> --- kernel/sched/rt.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index ee15f5a..0e4382e 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1337,7 +1337,8 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) curr->prio <= p->prio)) { int target = find_lowest_rq(p); - if (target != -1) + if (target != -1 && + p->prio < cpu_rq(target)->rt.highest_prio.curr) cpu = target; } rcu_read_unlock(); @@ -1613,6 +1614,12 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) break; lowest_rq = cpu_rq(cpu); + + if (lowest_rq->rt.highest_prio.curr <= task->prio) { + /* target rq has tasks of equal or higher priority, try again */ + lowest_rq = NULL; + continue; + } /* if the prio of this runqueue changed, try again */ if (double_lock_balance(rq, lowest_rq)) { -- 1.8.3.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-06 19:01 [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target Tim Chen @ 2015-01-06 19:30 ` Peter Zijlstra 2015-01-15 17:13 ` Tim Chen 2015-01-16 1:58 ` Steven Rostedt 1 sibling, 1 reply; 10+ messages in thread From: Peter Zijlstra @ 2015-01-06 19:30 UTC (permalink / raw) To: Tim Chen Cc: Ingo Molnar, Andi Kleen, Shawn Bohrer, Steven Rostedt, Suruchi Kadu, Doug Nelson, linux-kernel, Juri Lelli On Tue, Jan 06, 2015 at 11:01:51AM -0800, Tim Chen wrote: > Didn't get any response for this patch probably due to the holidays. > Reposting it as we will like to get it merged to help our database > workload. > > This patch added checks that prevent futile attempts to move rt tasks > to cpu with active tasks of equal or higher priority. This reduces > run queue lock contention and improves the performance of a well > known OLTP benchmark by 0.7%. Don't immediately see anything wrong with this, Steve? Juri, do we want to do a similar thing to the dl bits? > Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> > --- > kernel/sched/rt.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c > index ee15f5a..0e4382e 100644 > --- a/kernel/sched/rt.c > +++ b/kernel/sched/rt.c > @@ -1337,7 +1337,8 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) > curr->prio <= p->prio)) { > int target = find_lowest_rq(p); > > - if (target != -1) > + if (target != -1 && > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > cpu = target; > } > rcu_read_unlock(); > @@ -1613,6 +1614,12 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) > break; > > lowest_rq = cpu_rq(cpu); > + > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > + /* target rq has tasks of equal or higher priority, try again */ > + lowest_rq = NULL; > + continue; > + } > > /* if the prio of this runqueue changed, try again */ > if (double_lock_balance(rq, lowest_rq)) { > -- > 1.8.3.1 > > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-06 19:30 ` Peter Zijlstra @ 2015-01-15 17:13 ` Tim Chen 0 siblings, 0 replies; 10+ messages in thread From: Tim Chen @ 2015-01-15 17:13 UTC (permalink / raw) To: Peter Zijlstra, Steven Rostedt Cc: Ingo Molnar, Andi Kleen, Shawn Bohrer, Suruchi Kadu, Doug Nelson, linux-kernel, Juri Lelli On Tue, 2015-01-06 at 20:30 +0100, Peter Zijlstra wrote: > On Tue, Jan 06, 2015 at 11:01:51AM -0800, Tim Chen wrote: > > Didn't get any response for this patch probably due to the holidays. > > Reposting it as we will like to get it merged to help our database > > workload. > > > > This patch added checks that prevent futile attempts to move rt tasks > > to cpu with active tasks of equal or higher priority. This reduces > > run queue lock contention and improves the performance of a well > > known OLTP benchmark by 0.7%. > > Don't immediately see anything wrong with this, Steve? Steve, do you have any objections to this patch? Thanks. Tim ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-06 19:01 [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target Tim Chen 2015-01-06 19:30 ` Peter Zijlstra @ 2015-01-16 1:58 ` Steven Rostedt 2015-01-16 17:46 ` Tim Chen 1 sibling, 1 reply; 10+ messages in thread From: Steven Rostedt @ 2015-01-16 1:58 UTC (permalink / raw) To: Tim Chen Cc: Peter Zijlstra, Ingo Molnar, Andi Kleen, Shawn Bohrer, Suruchi Kadu, Doug Nelson, linux-kernel On Tue, 06 Jan 2015 11:01:51 -0800 Tim Chen <tim.c.chen@linux.intel.com> wrote: > Didn't get any response for this patch probably due to the holidays. > Reposting it as we will like to get it merged to help our database > workload. > > This patch added checks that prevent futile attempts to move rt tasks > to cpu with active tasks of equal or higher priority. This reduces > run queue lock contention and improves the performance of a well > known OLTP benchmark by 0.7%. > > Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> > --- > kernel/sched/rt.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c > index ee15f5a..0e4382e 100644 > --- a/kernel/sched/rt.c > +++ b/kernel/sched/rt.c > @@ -1337,7 +1337,8 @@ select_task_rq_rt(struct task_struct *p, int > cpu, int sd_flag, int flags) curr->prio <= p->prio)) { > int target = find_lowest_rq(p); > Please add a comment here that says something like: /* * Don't bother moving it if the destination CPU is * not running a lower priority task. */ > - if (target != -1) > + if (target != -1 && > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > cpu = target; > } > rcu_read_unlock(); > @@ -1613,6 +1614,12 @@ static struct rq *find_lock_lowest_rq(struct > task_struct *task, struct rq *rq) break; > > lowest_rq = cpu_rq(cpu); > + > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > + /* target rq has tasks of equal or higher priority, > try again */ > + lowest_rq = NULL; > + continue; This should just break out and not try again. The reason for the other try again is because of the double_lock which can release the locks which can cause a process waiting for the lock to sneak in and change the priorities. But this case, a try again is highly unlikely to do anything differently (no locks are released) and just waste cycles. -- Steve > + } > > /* if the prio of this runqueue changed, try again */ > if (double_lock_balance(rq, lowest_rq)) { ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-16 1:58 ` Steven Rostedt @ 2015-01-16 17:46 ` Tim Chen 2015-01-22 17:48 ` Tim Chen 2015-02-01 17:52 ` [tip:sched/core] sched/rt: " tip-bot for Tim Chen 0 siblings, 2 replies; 10+ messages in thread From: Tim Chen @ 2015-01-16 17:46 UTC (permalink / raw) To: Steven Rostedt Cc: Peter Zijlstra, Ingo Molnar, Andi Kleen, Shawn Bohrer, Suruchi Kadu, Doug Nelson, linux-kernel On Thu, 2015-01-15 at 20:58 -0500, Steven Rostedt wrote: > > Please add a comment here that says something like: > > /* > * Don't bother moving it if the destination CPU is > * not running a lower priority task. > */ > Okay. Updated in patch below. > > - if (target != -1) > > + if (target != -1 && > > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > > cpu = target; > > } > > rcu_read_unlock(); > > @@ -1613,6 +1614,12 @@ static struct rq *find_lock_lowest_rq(struct > > task_struct *task, struct rq *rq) break; > > > > lowest_rq = cpu_rq(cpu); > > + > > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > > + /* target rq has tasks of equal or higher priority, > > try again */ > > + lowest_rq = NULL; > > + continue; > > This should just break out and not try again. The reason for the other > try again is because of the double_lock which can release the locks > which can cause a process waiting for the lock to sneak in and > change the priorities. But this case, a try again is highly unlikely to > do anything differently (no locks are released) and just waste cycles. Agree. Updated in updated patch below. Thanks. Tim ---->8------ >From 5f676f7a351e85eb5cc64f1971dd03eca43b5271 Mon Sep 17 00:00:00 2001 From: Tim Chen <tim.c.chen@linux.intel.com> Date: Fri, 12 Dec 2014 15:38:12 -0800 Subject: [PATCH] sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target To: Peter Zijlstra <peterz@infradead.org> Cc: Andi Kleen <andi@firstfloor.org>, Ingo Molnar <mingo@elte.hu>, Shawn Bohrer <sbohrer@rgmadvisors.com>, Steven Rostedt <rostedt@goodmis.org>, Suruchi Kadu <suruchi.a.kadu@intel.com>, Doug Nelson <doug.nelson@intel.com>, linux-kernel@vger.kernel.org This patch added checks that prevent futile attempts to move rt tasks to cpu with active tasks of equal or higher priority. This reduces run queue lock contention and improves the performance of a well known OLTP benchmark by 0.7%. Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> --- kernel/sched/rt.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index ee15f5a..46ebcb1 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1337,7 +1337,12 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) curr->prio <= p->prio)) { int target = find_lowest_rq(p); - if (target != -1) + /* + * Don't bother moving it if the destination CPU is + * not running a lower priority task. + */ + if (target != -1 && + p->prio < cpu_rq(target)->rt.highest_prio.curr) cpu = target; } rcu_read_unlock(); @@ -1614,6 +1619,16 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) lowest_rq = cpu_rq(cpu); + if (lowest_rq->rt.highest_prio.curr <= task->prio) { + /* + * Target rq has tasks of equal or higher priority, + * retrying does not release any lock and is unlikely + * to yield a different result. + */ + lowest_rq = NULL; + break; + } + /* if the prio of this runqueue changed, try again */ if (double_lock_balance(rq, lowest_rq)) { /* -- 1.8.3.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-16 17:46 ` Tim Chen @ 2015-01-22 17:48 ` Tim Chen 2015-02-01 17:52 ` [tip:sched/core] sched/rt: " tip-bot for Tim Chen 1 sibling, 0 replies; 10+ messages in thread From: Tim Chen @ 2015-01-22 17:48 UTC (permalink / raw) To: Steven Rostedt Cc: Peter Zijlstra, Ingo Molnar, Andi Kleen, Shawn Bohrer, Suruchi Kadu, Doug Nelson, linux-kernel On Fri, 2015-01-16 at 09:46 -0800, Tim Chen wrote: > On Thu, 2015-01-15 at 20:58 -0500, Steven Rostedt wrote: > > > > > Please add a comment here that says something like: > > > > /* > > * Don't bother moving it if the destination CPU is > > * not running a lower priority task. > > */ > > > Okay. Updated in patch below. > > > > - if (target != -1) > > > + if (target != -1 && > > > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > > > cpu = target; > > > } > > > rcu_read_unlock(); > > > @@ -1613,6 +1614,12 @@ static struct rq *find_lock_lowest_rq(struct > > > task_struct *task, struct rq *rq) break; > > > > > > lowest_rq = cpu_rq(cpu); > > > + > > > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > > > + /* target rq has tasks of equal or higher priority, > > > try again */ > > > + lowest_rq = NULL; > > > + continue; > > > > This should just break out and not try again. The reason for the other > > try again is because of the double_lock which can release the locks > > which can cause a process waiting for the lock to sneak in and > > change the priorities. But this case, a try again is highly unlikely to > > do anything differently (no locks are released) and just waste cycles. > > Agree. Updated in updated patch below. > > Thanks. > > Tim > Steven and Peter, are you okay with the updated patch? Thanks. Tim > ---->8------ > > From 5f676f7a351e85eb5cc64f1971dd03eca43b5271 Mon Sep 17 00:00:00 2001 > From: Tim Chen <tim.c.chen@linux.intel.com> > Date: Fri, 12 Dec 2014 15:38:12 -0800 > Subject: [PATCH] sched-rt: Reduce rq lock contention by eliminating > locking of > non-feasible target > To: Peter Zijlstra <peterz@infradead.org> > Cc: Andi Kleen <andi@firstfloor.org>, Ingo Molnar <mingo@elte.hu>, > Shawn Bohrer <sbohrer@rgmadvisors.com>, Steven Rostedt > <rostedt@goodmis.org>, Suruchi Kadu <suruchi.a.kadu@intel.com>, Doug > Nelson <doug.nelson@intel.com>, linux-kernel@vger.kernel.org > > This patch added checks that prevent futile attempts to move rt tasks > to cpu with active tasks of equal or higher priority. This reduces > run queue lock contention and improves the performance of a well > known OLTP benchmark by 0.7%. > > Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> > --- > kernel/sched/rt.c | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > > diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c > index ee15f5a..46ebcb1 100644 > --- a/kernel/sched/rt.c > +++ b/kernel/sched/rt.c > @@ -1337,7 +1337,12 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) > curr->prio <= p->prio)) { > int target = find_lowest_rq(p); > > - if (target != -1) > + /* > + * Don't bother moving it if the destination CPU is > + * not running a lower priority task. > + */ > + if (target != -1 && > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > cpu = target; > } > rcu_read_unlock(); > @@ -1614,6 +1619,16 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) > > lowest_rq = cpu_rq(cpu); > > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > + /* > + * Target rq has tasks of equal or higher priority, > + * retrying does not release any lock and is unlikely > + * to yield a different result. > + */ > + lowest_rq = NULL; > + break; > + } > + > /* if the prio of this runqueue changed, try again */ > if (double_lock_balance(rq, lowest_rq)) { > /* ^ permalink raw reply [flat|nested] 10+ messages in thread
* [tip:sched/core] sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-01-16 17:46 ` Tim Chen 2015-01-22 17:48 ` Tim Chen @ 2015-02-01 17:52 ` tip-bot for Tim Chen 2015-02-24 16:12 ` Steven Rostedt 1 sibling, 1 reply; 10+ messages in thread From: tip-bot for Tim Chen @ 2015-02-01 17:52 UTC (permalink / raw) To: linux-tip-commits Cc: suruchi.a.kadu, linux-kernel, rostedt, sbohrer, peterz, mingo, tglx, doug.nelson, torvalds, tim.c.chen, hpa Commit-ID: 80e3d87b2c5582db0ab5e39610ce3707d97ba409 Gitweb: http://git.kernel.org/tip/80e3d87b2c5582db0ab5e39610ce3707d97ba409 Author: Tim Chen <tim.c.chen@linux.intel.com> AuthorDate: Fri, 12 Dec 2014 15:38:12 -0800 Committer: Ingo Molnar <mingo@kernel.org> CommitDate: Fri, 30 Jan 2015 19:38:49 +0100 sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target This patch adds checks that prevens futile attempts to move rt tasks to a CPU with active tasks of equal or higher priority. This reduces run queue lock contention and improves the performance of a well known OLTP benchmark by 0.7%. Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Shawn Bohrer <sbohrer@rgmadvisors.com> Cc: Suruchi Kadu <suruchi.a.kadu@intel.com> Cc: Doug Nelson<doug.nelson@intel.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Link: http://lkml.kernel.org/r/1421430374.2399.27.camel@schen9-desk2.jf.intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org> --- kernel/sched/rt.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c index 6725e3c..f4d4b07 100644 --- a/kernel/sched/rt.c +++ b/kernel/sched/rt.c @@ -1340,7 +1340,12 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) curr->prio <= p->prio)) { int target = find_lowest_rq(p); - if (target != -1) + /* + * Don't bother moving it if the destination CPU is + * not running a lower priority task. + */ + if (target != -1 && + p->prio < cpu_rq(target)->rt.highest_prio.curr) cpu = target; } rcu_read_unlock(); @@ -1617,6 +1622,16 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) lowest_rq = cpu_rq(cpu); + if (lowest_rq->rt.highest_prio.curr <= task->prio) { + /* + * Target rq has tasks of equal or higher priority, + * retrying does not release any lock and is unlikely + * to yield a different result. + */ + lowest_rq = NULL; + break; + } + /* if the prio of this runqueue changed, try again */ if (double_lock_balance(rq, lowest_rq)) { /* ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [tip:sched/core] sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-02-01 17:52 ` [tip:sched/core] sched/rt: " tip-bot for Tim Chen @ 2015-02-24 16:12 ` Steven Rostedt 2015-03-03 21:12 ` Ben Hutchings 2015-04-09 1:17 ` Zefan Li 0 siblings, 2 replies; 10+ messages in thread From: Steven Rostedt @ 2015-02-24 16:12 UTC (permalink / raw) To: tip-bot for Tim Chen Cc: suruchi.a.kadu, linux-kernel, sbohrer, peterz, mingo, tglx, doug.nelson, torvalds, tim.c.chen, hpa, stable, Clark Williams On Sun, 1 Feb 2015 09:52:24 -0800 tip-bot for Tim Chen <tipbot@zytor.com> wrote: > Commit-ID: 80e3d87b2c5582db0ab5e39610ce3707d97ba409 > Gitweb: http://git.kernel.org/tip/80e3d87b2c5582db0ab5e39610ce3707d97ba409 > Author: Tim Chen <tim.c.chen@linux.intel.com> > AuthorDate: Fri, 12 Dec 2014 15:38:12 -0800 > Committer: Ingo Molnar <mingo@kernel.org> > CommitDate: Fri, 30 Jan 2015 19:38:49 +0100 > > sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target > > This patch adds checks that prevens futile attempts to move rt tasks > to a CPU with active tasks of equal or higher priority. > > This reduces run queue lock contention and improves the performance of > a well known OLTP benchmark by 0.7%. > > Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > Cc: Shawn Bohrer <sbohrer@rgmadvisors.com> > Cc: Suruchi Kadu <suruchi.a.kadu@intel.com> > Cc: Doug Nelson<doug.nelson@intel.com> > Cc: Steven Rostedt <rostedt@goodmis.org> > Cc: Linus Torvalds <torvalds@linux-foundation.org> > Link: http://lkml.kernel.org/r/1421430374.2399.27.camel@schen9-desk2.jf.intel.com > Signed-off-by: Ingo Molnar <mingo@kernel.org> I see this has been added to mainline already. I think this should go to stable as well. As far back as it applies. I'll even add this to the stable-rt if need be. But I rather pull it into stable-rt via the stable branches. Thanks, -- Steve > --- > kernel/sched/rt.c | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > > diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c > index 6725e3c..f4d4b07 100644 > --- a/kernel/sched/rt.c > +++ b/kernel/sched/rt.c > @@ -1340,7 +1340,12 @@ select_task_rq_rt(struct task_struct *p, int cpu, int sd_flag, int flags) > curr->prio <= p->prio)) { > int target = find_lowest_rq(p); > > - if (target != -1) > + /* > + * Don't bother moving it if the destination CPU is > + * not running a lower priority task. > + */ > + if (target != -1 && > + p->prio < cpu_rq(target)->rt.highest_prio.curr) > cpu = target; > } > rcu_read_unlock(); > @@ -1617,6 +1622,16 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq) > > lowest_rq = cpu_rq(cpu); > > + if (lowest_rq->rt.highest_prio.curr <= task->prio) { > + /* > + * Target rq has tasks of equal or higher priority, > + * retrying does not release any lock and is unlikely > + * to yield a different result. > + */ > + lowest_rq = NULL; > + break; > + } > + > /* if the prio of this runqueue changed, try again */ > if (double_lock_balance(rq, lowest_rq)) { > /* ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [tip:sched/core] sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-02-24 16:12 ` Steven Rostedt @ 2015-03-03 21:12 ` Ben Hutchings 2015-04-09 1:17 ` Zefan Li 1 sibling, 0 replies; 10+ messages in thread From: Ben Hutchings @ 2015-03-03 21:12 UTC (permalink / raw) To: Steven Rostedt Cc: tip-bot for Tim Chen, suruchi.a.kadu, linux-kernel, sbohrer, peterz, mingo, tglx, doug.nelson, torvalds, tim.c.chen, hpa, stable, Clark Williams [-- Attachment #1: Type: text/plain, Size: 1727 bytes --] On Tue, 2015-02-24 at 11:12 -0500, Steven Rostedt wrote: > On Sun, 1 Feb 2015 09:52:24 -0800 > tip-bot for Tim Chen <tipbot@zytor.com> wrote: > > > Commit-ID: 80e3d87b2c5582db0ab5e39610ce3707d97ba409 > > Gitweb: http://git.kernel.org/tip/80e3d87b2c5582db0ab5e39610ce3707d97ba409 > > Author: Tim Chen <tim.c.chen@linux.intel.com> > > AuthorDate: Fri, 12 Dec 2014 15:38:12 -0800 > > Committer: Ingo Molnar <mingo@kernel.org> > > CommitDate: Fri, 30 Jan 2015 19:38:49 +0100 > > > > sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target > > > > This patch adds checks that prevens futile attempts to move rt tasks > > to a CPU with active tasks of equal or higher priority. > > > > This reduces run queue lock contention and improves the performance of > > a well known OLTP benchmark by 0.7%. > > > > Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> > > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > > Cc: Shawn Bohrer <sbohrer@rgmadvisors.com> > > Cc: Suruchi Kadu <suruchi.a.kadu@intel.com> > > Cc: Doug Nelson<doug.nelson@intel.com> > > Cc: Steven Rostedt <rostedt@goodmis.org> > > Cc: Linus Torvalds <torvalds@linux-foundation.org> > > Link: http://lkml.kernel.org/r/1421430374.2399.27.camel@schen9-desk2.jf.intel.com > > Signed-off-by: Ingo Molnar <mingo@kernel.org> > > I see this has been added to mainline already. I think this should go > to stable as well. As far back as it applies. I'll even add this to the > stable-rt if need be. But I rather pull it into stable-rt via the > stable branches. [...] I've queued this up for 3.2, thanks. Ben. -- Ben Hutchings The world is coming to an end. Please log off. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 811 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [tip:sched/core] sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target 2015-02-24 16:12 ` Steven Rostedt 2015-03-03 21:12 ` Ben Hutchings @ 2015-04-09 1:17 ` Zefan Li 1 sibling, 0 replies; 10+ messages in thread From: Zefan Li @ 2015-04-09 1:17 UTC (permalink / raw) To: Steven Rostedt Cc: tip-bot for Tim Chen, suruchi.a.kadu, linux-kernel, sbohrer, peterz, mingo, tglx, doug.nelson, torvalds, tim.c.chen, hpa, stable, Clark Williams >> Commit-ID: 80e3d87b2c5582db0ab5e39610ce3707d97ba409 >> Gitweb: http://git.kernel.org/tip/80e3d87b2c5582db0ab5e39610ce3707d97ba409 >> Author: Tim Chen <tim.c.chen@linux.intel.com> >> AuthorDate: Fri, 12 Dec 2014 15:38:12 -0800 >> Committer: Ingo Molnar <mingo@kernel.org> >> CommitDate: Fri, 30 Jan 2015 19:38:49 +0100 >> >> sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target >> >> This patch adds checks that prevens futile attempts to move rt tasks >> to a CPU with active tasks of equal or higher priority. >> >> This reduces run queue lock contention and improves the performance of >> a well known OLTP benchmark by 0.7%. >> >> Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com> >> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> >> Cc: Shawn Bohrer <sbohrer@rgmadvisors.com> >> Cc: Suruchi Kadu <suruchi.a.kadu@intel.com> >> Cc: Doug Nelson<doug.nelson@intel.com> >> Cc: Steven Rostedt <rostedt@goodmis.org> >> Cc: Linus Torvalds <torvalds@linux-foundation.org> >> Link: http://lkml.kernel.org/r/1421430374.2399.27.camel@schen9-desk2.jf.intel.com >> Signed-off-by: Ingo Molnar <mingo@kernel.org> > > I see this has been added to mainline already. I think this should go > to stable as well. As far back as it applies. I'll even add this to the > stable-rt if need be. But I rather pull it into stable-rt via the > stable branches. > Queued up for 3.4. Thanks! ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2015-04-09 1:19 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2015-01-06 19:01 [PATCH] Repost sched-rt: Reduce rq lock contention by eliminating locking of non-feasible target Tim Chen 2015-01-06 19:30 ` Peter Zijlstra 2015-01-15 17:13 ` Tim Chen 2015-01-16 1:58 ` Steven Rostedt 2015-01-16 17:46 ` Tim Chen 2015-01-22 17:48 ` Tim Chen 2015-02-01 17:52 ` [tip:sched/core] sched/rt: " tip-bot for Tim Chen 2015-02-24 16:12 ` Steven Rostedt 2015-03-03 21:12 ` Ben Hutchings 2015-04-09 1:17 ` Zefan Li
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).