* Re: sched: Fix signedness bug in yield_to() [not found] <20130220022712.0E8586607A4@gitolite.kernel.org> @ 2013-02-21 0:31 ` Shuah Khan 2013-02-21 8:56 ` Ingo Molnar 0 siblings, 1 reply; 8+ messages in thread From: Shuah Khan @ 2013-02-21 0:31 UTC (permalink / raw) To: dan.carpenter, peterz, mingo Cc: Linux Kernel Mailing List, torvalds, Shuah Khan On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List <linux-kernel@vger.kernel.org> wrote: > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d > Commit: c3c186403c6abd32e719f005f0af950155a9e54d > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 > Author: Dan Carpenter <dan.carpenter@oracle.com> > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 > Committer: Ingo Molnar <mingo@kernel.org> > CommitDate: Tue Feb 5 12:59:29 2013 +0100 > > sched: Fix signedness bug in yield_to() > > In 7b270f6099 "sched: Bail out of yield_to when source and > target runqueue has one task" we changed this to store -ESRCH so > it needs to be signed. Dan, Ingo, I can't find the 7b270f6099 "sched: Bail out of yield_to when source and target runqueue has one task" in the latest Linus's git. Am I missing something. The current kenel/sched/core.c doesn't have the code from the associated patch https://patchwork.kernel.org/patch/2016651/ > bool __sched yield_to(struct task_struct *p, bool preempt) > { > @@ -4303,6 +4306,15 @@ bool __sched yield_to(struct task_struct *p, bool preempt) > > again: > p_rq = task_rq(p); > + /* > + * If we're the only runnable task on the rq and target rq also > + * has only one task, there's absolutely no point in yielding. > + */ > + if (rq->nr_running == 1 && p_rq->nr_running == 1) { > + yielded = -ESRCH; > + goto out_irq; > + } Without the 7b270f6099 "sched: Bail out of yield_to when source and target runqueue has one task", do you need this change? Am I missing something? -- Shuah ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 0:31 ` sched: Fix signedness bug in yield_to() Shuah Khan @ 2013-02-21 8:56 ` Ingo Molnar 2013-02-21 10:05 ` Raghavendra KT 2013-02-21 23:26 ` Marcelo Tosatti 0 siblings, 2 replies; 8+ messages in thread From: Ingo Molnar @ 2013-02-21 8:56 UTC (permalink / raw) To: Shuah Khan, Marcelo Tosatti Cc: dan.carpenter, peterz, Linux Kernel Mailing List, torvalds * Shuah Khan <shuahkhan@gmail.com> wrote: > On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List > <linux-kernel@vger.kernel.org> wrote: > > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d > > Commit: c3c186403c6abd32e719f005f0af950155a9e54d > > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 > > Author: Dan Carpenter <dan.carpenter@oracle.com> > > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 > > Committer: Ingo Molnar <mingo@kernel.org> > > CommitDate: Tue Feb 5 12:59:29 2013 +0100 > > > > sched: Fix signedness bug in yield_to() > > > > In 7b270f6099 "sched: Bail out of yield_to when source and > > target runqueue has one task" we changed this to store -ESRCH so > > it needs to be signed. > > Dan, Ingo, > > I can't find the 7b270f6099 "sched: Bail out of yield_to when > source and target runqueue has one task" in the latest Linus's > git. Am I missing something. > > The current kenel/sched/core.c doesn't have the code from the > associated patch https://patchwork.kernel.org/patch/2016651/ As per the lkml discussion that one was supposed to go upstream via the KVM tree. Marcelo? Thanks, Ingo ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 8:56 ` Ingo Molnar @ 2013-02-21 10:05 ` Raghavendra KT 2013-02-21 15:50 ` Shuah Khan 2013-02-21 23:26 ` Marcelo Tosatti 1 sibling, 1 reply; 8+ messages in thread From: Raghavendra KT @ 2013-02-21 10:05 UTC (permalink / raw) To: Ingo Molnar Cc: Shuah Khan, Marcelo Tosatti, dan.carpenter, peterz, Linux Kernel Mailing List, torvalds On Thu, Feb 21, 2013 at 2:26 PM, Ingo Molnar <mingo@kernel.org> wrote: > > * Shuah Khan <shuahkhan@gmail.com> wrote: > >> On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List >> <linux-kernel@vger.kernel.org> wrote: >> > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d >> > Commit: c3c186403c6abd32e719f005f0af950155a9e54d >> > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 >> > Author: Dan Carpenter <dan.carpenter@oracle.com> >> > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 >> > Committer: Ingo Molnar <mingo@kernel.org> >> > CommitDate: Tue Feb 5 12:59:29 2013 +0100 >> > >> > sched: Fix signedness bug in yield_to() >> > >> > In 7b270f6099 "sched: Bail out of yield_to when source and >> > target runqueue has one task" we changed this to store -ESRCH so >> > it needs to be signed. >> >> Dan, Ingo, >> >> I can't find the 7b270f6099 "sched: Bail out of yield_to when >> source and target runqueue has one task" in the latest Linus's >> git. Am I missing something. >> >> The current kenel/sched/core.c doesn't have the code from the >> associated patch https://patchwork.kernel.org/patch/2016651/ > > As per the lkml discussion that one was supposed to go upstream > via the KVM tree. Marcelo? > It is going via KVM tree. (as per Gleb's pull request) ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 10:05 ` Raghavendra KT @ 2013-02-21 15:50 ` Shuah Khan 0 siblings, 0 replies; 8+ messages in thread From: Shuah Khan @ 2013-02-21 15:50 UTC (permalink / raw) To: Raghavendra KT Cc: Ingo Molnar, Marcelo Tosatti, dan.carpenter, peterz, Linux Kernel Mailing List, torvalds On Thu, Feb 21, 2013 at 3:05 AM, Raghavendra KT <raghavendra.kt.linux@gmail.com> wrote: > On Thu, Feb 21, 2013 at 2:26 PM, Ingo Molnar <mingo@kernel.org> wrote: >> >> * Shuah Khan <shuahkhan@gmail.com> wrote: >> >>> On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List >>> <linux-kernel@vger.kernel.org> wrote: >>> > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d >>> > Commit: c3c186403c6abd32e719f005f0af950155a9e54d >>> > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 >>> > Author: Dan Carpenter <dan.carpenter@oracle.com> >>> > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 >>> > Committer: Ingo Molnar <mingo@kernel.org> >>> > CommitDate: Tue Feb 5 12:59:29 2013 +0100 >>> > >>> > sched: Fix signedness bug in yield_to() >>> > >>> > In 7b270f6099 "sched: Bail out of yield_to when source and >>> > target runqueue has one task" we changed this to store -ESRCH so >>> > it needs to be signed. >>> >>> Dan, Ingo, >>> >>> I can't find the 7b270f6099 "sched: Bail out of yield_to when >>> source and target runqueue has one task" in the latest Linus's >>> git. Am I missing something. >>> >>> The current kenel/sched/core.c doesn't have the code from the >>> associated patch https://patchwork.kernel.org/patch/2016651/ >> >> As per the lkml discussion that one was supposed to go upstream >> via the KVM tree. Marcelo? >> > > It is going via KVM tree. (as per Gleb's pull request) Thanks. Do you see these two commits as stable release candidates? -- Shuah ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 8:56 ` Ingo Molnar 2013-02-21 10:05 ` Raghavendra KT @ 2013-02-21 23:26 ` Marcelo Tosatti 2013-02-22 6:42 ` Raghavendra KT 2013-02-22 9:43 ` Ingo Molnar 1 sibling, 2 replies; 8+ messages in thread From: Marcelo Tosatti @ 2013-02-21 23:26 UTC (permalink / raw) To: Ingo Molnar Cc: Shuah Khan, dan.carpenter, peterz, Linux Kernel Mailing List, torvalds On Thu, Feb 21, 2013 at 09:56:54AM +0100, Ingo Molnar wrote: > > * Shuah Khan <shuahkhan@gmail.com> wrote: > > > On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List > > <linux-kernel@vger.kernel.org> wrote: > > > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d > > > Commit: c3c186403c6abd32e719f005f0af950155a9e54d > > > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 > > > Author: Dan Carpenter <dan.carpenter@oracle.com> > > > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 > > > Committer: Ingo Molnar <mingo@kernel.org> > > > CommitDate: Tue Feb 5 12:59:29 2013 +0100 > > > > > > sched: Fix signedness bug in yield_to() > > > > > > In 7b270f6099 "sched: Bail out of yield_to when source and > > > target runqueue has one task" we changed this to store -ESRCH so > > > it needs to be signed. > > > > Dan, Ingo, > > > > I can't find the 7b270f6099 "sched: Bail out of yield_to when > > source and target runqueue has one task" in the latest Linus's > > git. Am I missing something. > > > > The current kenel/sched/core.c doesn't have the code from the > > associated patch https://patchwork.kernel.org/patch/2016651/ > > As per the lkml discussion that one was supposed to go upstream > via the KVM tree. Marcelo? commit c3c186403c6abd32e719f005f0af950155a9e54d Author: Dan Carpenter <dan.carpenter@oracle.com> Date: Tue Feb 5 14:37:51 2013 +0300 sched: Fix signedness bug in yield_to() In 7b270f6099 "sched: Bail out of yield_to when source and target runqueue has one task" we changed this to store -ESRCH so it needs to be signed. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: kbuild@01.org Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Mike Galbraith <efault@gmx.de> Link: http://lkml.kernel.org/r/20130205113751.GA20521@elgon.mountain Signed-off-by: Ingo Molnar <mingo@kernel.org> ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 23:26 ` Marcelo Tosatti @ 2013-02-22 6:42 ` Raghavendra KT 2013-02-22 16:06 ` Shuah Khan 2013-02-22 9:43 ` Ingo Molnar 1 sibling, 1 reply; 8+ messages in thread From: Raghavendra KT @ 2013-02-22 6:42 UTC (permalink / raw) To: Marcelo Tosatti, dan.carpenter Cc: Ingo Molnar, Shuah Khan, peterz, Linux Kernel Mailing List, torvalds On Fri, Feb 22, 2013 at 4:56 AM, Marcelo Tosatti <mtosatti@redhat.com> wrote: > On Thu, Feb 21, 2013 at 09:56:54AM +0100, Ingo Molnar wrote: >> >> * Shuah Khan <shuahkhan@gmail.com> wrote: >> >> > On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List >> > <linux-kernel@vger.kernel.org> wrote: >> > > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d >> > > Commit: c3c186403c6abd32e719f005f0af950155a9e54d >> > > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 >> > > Author: Dan Carpenter <dan.carpenter@oracle.com> >> > > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 >> > > Committer: Ingo Molnar <mingo@kernel.org> >> > > CommitDate: Tue Feb 5 12:59:29 2013 +0100 >> > > >> > > sched: Fix signedness bug in yield_to() >> > > >> > > In 7b270f6099 "sched: Bail out of yield_to when source and >> > > target runqueue has one task" we changed this to store -ESRCH so >> > > it needs to be signed. >> > >> > Dan, Ingo, >> > >> > I can't find the 7b270f6099 "sched: Bail out of yield_to when >> > source and target runqueue has one task" in the latest Linus's >> > git. Am I missing something. >> > >> > The current kenel/sched/core.c doesn't have the code from the >> > associated patch https://patchwork.kernel.org/patch/2016651/ >> >> As per the lkml discussion that one was supposed to go upstream >> via the KVM tree. Marcelo? > > commit c3c186403c6abd32e719f005f0af950155a9e54d > Author: Dan Carpenter <dan.carpenter@oracle.com> > Date: Tue Feb 5 14:37:51 2013 +0300 > > sched: Fix signedness bug in yield_to() > > In 7b270f6099 "sched: Bail out of yield_to when source and > target runqueue has one task" we changed this to store -ESRCH so > it needs to be signed. > > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > Cc: Peter Zijlstra <peterz@infradead.org> > Cc: kbuild@01.org > Cc: Steven Rostedt <rostedt@goodmis.org> > Cc: Mike Galbraith <efault@gmx.de> > Link: http://lkml.kernel.org/r/20130205113751.GA20521@elgon.mountain > Signed-off-by: Ingo Molnar <mingo@kernel.org> > IIUC, we are only changing variable in yield_to from bool to int. I am curious whether we need changes in struct sched_class (sched.h) bool (*yield_to_task) (struct rq *rq, struct task_struct *p, bool preempt); ==> int (*yield_to_task) (struct rq *rq, struct task_struct *p, bool preempt); otherwise we would assign bool value to int here yielded = curr->sched_class->yield_to_task(rq, p, preempt); this return values also cascaded to kvm_main.c. If we need to patchup entire thing, I can cook a correction patch. Thanks and Regards Raghu ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-22 6:42 ` Raghavendra KT @ 2013-02-22 16:06 ` Shuah Khan 0 siblings, 0 replies; 8+ messages in thread From: Shuah Khan @ 2013-02-22 16:06 UTC (permalink / raw) To: Raghavendra KT Cc: Marcelo Tosatti, dan.carpenter, Ingo Molnar, peterz, Linux Kernel Mailing List, torvalds On Thu, Feb 21, 2013 at 11:42 PM, Raghavendra KT <raghavendra.kt.linux@gmail.com> wrote: > On Fri, Feb 22, 2013 at 4:56 AM, Marcelo Tosatti <mtosatti@redhat.com> wrote: >> On Thu, Feb 21, 2013 at 09:56:54AM +0100, Ingo Molnar wrote: >>> >>> * Shuah Khan <shuahkhan@gmail.com> wrote: >>> >>> > On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List >>> > <linux-kernel@vger.kernel.org> wrote: >>> > > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d >>> > > Commit: c3c186403c6abd32e719f005f0af950155a9e54d >>> > > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 >>> > > Author: Dan Carpenter <dan.carpenter@oracle.com> >>> > > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 >>> > > Committer: Ingo Molnar <mingo@kernel.org> >>> > > CommitDate: Tue Feb 5 12:59:29 2013 +0100 >>> > > >>> > > sched: Fix signedness bug in yield_to() >>> > > >>> > > In 7b270f6099 "sched: Bail out of yield_to when source and >>> > > target runqueue has one task" we changed this to store -ESRCH so >>> > > it needs to be signed. >>> > >>> > Dan, Ingo, >>> > >>> > I can't find the 7b270f6099 "sched: Bail out of yield_to when >>> > source and target runqueue has one task" in the latest Linus's >>> > git. Am I missing something. >>> > >>> > The current kenel/sched/core.c doesn't have the code from the >>> > associated patch https://patchwork.kernel.org/patch/2016651/ >>> >>> As per the lkml discussion that one was supposed to go upstream >>> via the KVM tree. Marcelo? >> >> commit c3c186403c6abd32e719f005f0af950155a9e54d >> Author: Dan Carpenter <dan.carpenter@oracle.com> >> Date: Tue Feb 5 14:37:51 2013 +0300 >> >> sched: Fix signedness bug in yield_to() >> >> In 7b270f6099 "sched: Bail out of yield_to when source and >> target runqueue has one task" we changed this to store -ESRCH so >> it needs to be signed. >> >> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> >> Cc: Peter Zijlstra <peterz@infradead.org> >> Cc: kbuild@01.org >> Cc: Steven Rostedt <rostedt@goodmis.org> >> Cc: Mike Galbraith <efault@gmx.de> >> Link: http://lkml.kernel.org/r/20130205113751.GA20521@elgon.mountain >> Signed-off-by: Ingo Molnar <mingo@kernel.org> >> > > IIUC, we are only changing variable in yield_to from bool to int. > I am curious whether we need changes in struct sched_class (sched.h) > > bool (*yield_to_task) (struct rq *rq, struct task_struct *p, bool preempt); > ==> > int (*yield_to_task) (struct rq *rq, struct task_struct *p, bool preempt); > > otherwise we would assign bool value to int here > > yielded = curr->sched_class->yield_to_task(rq, p, preempt); > > this return values also cascaded to kvm_main.c. > > If we need to patchup entire thing, I can cook a correction patch. > > Thanks and Regards > Raghu Right/. I was attempting to back-port c3c186403c6abd32e719f005f0af950155a9e54d to stables when I noticed the discrepancy. My concerns are: 1. Does it make sense to have c3c186403c6abd32e719f005f0af950155a9e54d in without 7b270f6099 "sched: Bail out of yield_to when source and target runqueue has one task" and? 2. Second concern is, is c3c186403c6abd32e719f005f0af950155a9e54d is enough or more changes are needed? does __yield_to prototype needs changes as well. -- Shuah -- Shuah ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: sched: Fix signedness bug in yield_to() 2013-02-21 23:26 ` Marcelo Tosatti 2013-02-22 6:42 ` Raghavendra KT @ 2013-02-22 9:43 ` Ingo Molnar 1 sibling, 0 replies; 8+ messages in thread From: Ingo Molnar @ 2013-02-22 9:43 UTC (permalink / raw) To: Marcelo Tosatti Cc: Shuah Khan, dan.carpenter, peterz, Linux Kernel Mailing List, torvalds * Marcelo Tosatti <mtosatti@redhat.com> wrote: > On Thu, Feb 21, 2013 at 09:56:54AM +0100, Ingo Molnar wrote: > > > > * Shuah Khan <shuahkhan@gmail.com> wrote: > > > > > On Tue, Feb 19, 2013 at 7:27 PM, Linux Kernel Mailing List > > > <linux-kernel@vger.kernel.org> wrote: > > > > Gitweb: http://git.kernel.org/linus/;a=commit;h=c3c186403c6abd32e719f005f0af950155a9e54d > > > > Commit: c3c186403c6abd32e719f005f0af950155a9e54d > > > > Parent: e0a79f529d5ba2507486d498b25da40911d95cf6 > > > > Author: Dan Carpenter <dan.carpenter@oracle.com> > > > > AuthorDate: Tue Feb 5 14:37:51 2013 +0300 > > > > Committer: Ingo Molnar <mingo@kernel.org> > > > > CommitDate: Tue Feb 5 12:59:29 2013 +0100 > > > > > > > > sched: Fix signedness bug in yield_to() > > > > > > > > In 7b270f6099 "sched: Bail out of yield_to when source and > > > > target runqueue has one task" we changed this to store -ESRCH so > > > > it needs to be signed. > > > > > > Dan, Ingo, > > > > > > I can't find the 7b270f6099 "sched: Bail out of yield_to when > > > source and target runqueue has one task" in the latest Linus's > > > git. Am I missing something. > > > > > > The current kenel/sched/core.c doesn't have the code from the > > > associated patch https://patchwork.kernel.org/patch/2016651/ > > > > As per the lkml discussion that one was supposed to go upstream > > via the KVM tree. Marcelo? > > commit c3c186403c6abd32e719f005f0af950155a9e54d > Author: Dan Carpenter <dan.carpenter@oracle.com> > Date: Tue Feb 5 14:37:51 2013 +0300 > > sched: Fix signedness bug in yield_to() I meant the other patch - the two got disassociated. Thanks, Ingo ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2013-02-22 16:06 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20130220022712.0E8586607A4@gitolite.kernel.org>
2013-02-21 0:31 ` sched: Fix signedness bug in yield_to() Shuah Khan
2013-02-21 8:56 ` Ingo Molnar
2013-02-21 10:05 ` Raghavendra KT
2013-02-21 15:50 ` Shuah Khan
2013-02-21 23:26 ` Marcelo Tosatti
2013-02-22 6:42 ` Raghavendra KT
2013-02-22 16:06 ` Shuah Khan
2013-02-22 9:43 ` Ingo Molnar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox