From: Oleg Nesterov <oleg@redhat.com> To: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Randy Dunlap <rdunlap@infradead.org>, Andrew Morton <akpm@linux-foundation.org>, mm-commits@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-next@vger.kernel.org Subject: Re: mmotm 2013-06-27-16-36 uploaded (wait event common) Date: Fri, 28 Jun 2013 17:38:28 +0200 [thread overview] Message-ID: <20130628153828.GA24371@redhat.com> (raw) In-Reply-To: <20130628165641.2193bfcd78c1f27d6f68f9a5@canb.auug.org.au> On 06/28, Stephen Rothwell wrote: > > On Thu, 27 Jun 2013 23:06:43 -0700 Randy Dunlap <rdunlap@infradead.org> wrote: > > > > >> My builds are littered with hundreds of warnings like this one: > > >> > > >> drivers/tty/tty_ioctl.c:220:6: warning: the omitted middle operand in ?: will always be 'true', suggest explicit middle operand [-Wparentheses] > > >> > > >> I guess due to this line from wait_event_common(): > > >> > > >> + __ret = __wait_no_timeout(tout) ?: (tout) ?: 1; > > >> > I added the following to linux-next today: > (sorry Randy, I forgot the Reported-by:, Andrew please add) > > From: Stephen Rothwell <sfr@canb.auug.org.au> > Date: Fri, 28 Jun 2013 16:52:58 +1000 > Subject: [PATCH] fix warnings from ?: operator in wait.h Argh. This patch strikes again. Thanks, and sorry. And please help! I am not sure I understand. Since when gcc dislikes '?:' ? /bin/grep shows a lot of users of 'X ?: Y' shortcut? > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > --- > include/linux/wait.h | 18 ++++++++++++++---- > 1 file changed, 14 insertions(+), 4 deletions(-) > > diff --git a/include/linux/wait.h b/include/linux/wait.h > index 1c08a6c..f3b793d 100644 > --- a/include/linux/wait.h > +++ b/include/linux/wait.h > @@ -197,7 +197,12 @@ wait_queue_head_t *bit_waitqueue(void *, int); > for (;;) { \ > __ret = prepare_to_wait_event(&wq, &__wait, state); \ > if (condition) { \ > - __ret = __wait_no_timeout(tout) ?: __tout ?: 1; \ > + __ret = __wait_no_timeout(tout); \ > + if (!__ret) { \ > + __ret = __tout; \ > + if (!__ret) \ > + __ret = 1; \ > + } \ > break; \ > } \ > \ > @@ -218,9 +223,14 @@ wait_queue_head_t *bit_waitqueue(void *, int); > #define wait_event_common(wq, condition, state, tout) \ > ({ \ > long __ret; \ > - if (condition) \ > - __ret = __wait_no_timeout(tout) ?: (tout) ?: 1; \ > - else \ > + if (condition) { \ > + __ret = __wait_no_timeout(tout); \ > + if (!__ret) { \ > + __ret = (tout); \ > + if (!__ret) \ > + __ret = 1; \ > + } \ > + } else \ > __ret = __wait_event_common(wq, condition, state, tout);\ > __ret; \ > }) > -- > 1.8.3.1 > > -- > Cheers, > Stephen Rothwell sfr@canb.auug.org.au
WARNING: multiple messages have this Message-ID (diff)
From: Oleg Nesterov <oleg@redhat.com> To: Stephen Rothwell <sfr@canb.auug.org.au> Cc: Randy Dunlap <rdunlap@infradead.org>, Andrew Morton <akpm@linux-foundation.org>, mm-commits@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-next@vger.kernel.org Subject: Re: mmotm 2013-06-27-16-36 uploaded (wait event common) Date: Fri, 28 Jun 2013 17:38:28 +0200 [thread overview] Message-ID: <20130628153828.GA24371@redhat.com> (raw) In-Reply-To: <20130628165641.2193bfcd78c1f27d6f68f9a5@canb.auug.org.au> On 06/28, Stephen Rothwell wrote: > > On Thu, 27 Jun 2013 23:06:43 -0700 Randy Dunlap <rdunlap@infradead.org> wrote: > > > > >> My builds are littered with hundreds of warnings like this one: > > >> > > >> drivers/tty/tty_ioctl.c:220:6: warning: the omitted middle operand in ?: will always be 'true', suggest explicit middle operand [-Wparentheses] > > >> > > >> I guess due to this line from wait_event_common(): > > >> > > >> + __ret = __wait_no_timeout(tout) ?: (tout) ?: 1; > > >> > I added the following to linux-next today: > (sorry Randy, I forgot the Reported-by:, Andrew please add) > > From: Stephen Rothwell <sfr@canb.auug.org.au> > Date: Fri, 28 Jun 2013 16:52:58 +1000 > Subject: [PATCH] fix warnings from ?: operator in wait.h Argh. This patch strikes again. Thanks, and sorry. And please help! I am not sure I understand. Since when gcc dislikes '?:' ? /bin/grep shows a lot of users of 'X ?: Y' shortcut? > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > --- > include/linux/wait.h | 18 ++++++++++++++---- > 1 file changed, 14 insertions(+), 4 deletions(-) > > diff --git a/include/linux/wait.h b/include/linux/wait.h > index 1c08a6c..f3b793d 100644 > --- a/include/linux/wait.h > +++ b/include/linux/wait.h > @@ -197,7 +197,12 @@ wait_queue_head_t *bit_waitqueue(void *, int); > for (;;) { \ > __ret = prepare_to_wait_event(&wq, &__wait, state); \ > if (condition) { \ > - __ret = __wait_no_timeout(tout) ?: __tout ?: 1; \ > + __ret = __wait_no_timeout(tout); \ > + if (!__ret) { \ > + __ret = __tout; \ > + if (!__ret) \ > + __ret = 1; \ > + } \ > break; \ > } \ > \ > @@ -218,9 +223,14 @@ wait_queue_head_t *bit_waitqueue(void *, int); > #define wait_event_common(wq, condition, state, tout) \ > ({ \ > long __ret; \ > - if (condition) \ > - __ret = __wait_no_timeout(tout) ?: (tout) ?: 1; \ > - else \ > + if (condition) { \ > + __ret = __wait_no_timeout(tout); \ > + if (!__ret) { \ > + __ret = (tout); \ > + if (!__ret) \ > + __ret = 1; \ > + } \ > + } else \ > __ret = __wait_event_common(wq, condition, state, tout);\ > __ret; \ > }) > -- > 1.8.3.1 > > -- > Cheers, > Stephen Rothwell sfr@canb.auug.org.au -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2013-06-28 15:43 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-06-27 23:37 mmotm 2013-06-27-16-36 uploaded akpm 2013-06-27 23:37 ` akpm 2013-06-27 23:37 ` akpm 2013-06-27 23:57 ` Stephen Rothwell 2013-06-28 0:32 ` Andrew Morton 2013-06-28 0:32 ` Andrew Morton 2013-06-28 1:09 ` Stephen Rothwell 2013-06-28 0:32 ` Andrew Morton 2013-06-28 5:30 ` mmotm 2013-06-27-16-36 uploaded (wait event common) Randy Dunlap 2013-06-28 5:30 ` Randy Dunlap 2013-06-28 5:51 ` Andrew Morton 2013-06-28 5:51 ` Andrew Morton 2013-06-28 6:06 ` Randy Dunlap 2013-06-28 6:06 ` Randy Dunlap 2013-06-28 6:56 ` Stephen Rothwell 2013-06-28 15:38 ` Oleg Nesterov [this message] 2013-06-28 15:38 ` Oleg Nesterov 2013-06-28 17:15 ` Oleg Nesterov 2013-06-28 17:15 ` Oleg Nesterov 2013-06-29 14:00 ` Valdis.Kletnieks 2013-06-30 18:28 ` Oleg Nesterov 2013-06-30 18:28 ` Oleg Nesterov 2013-06-28 5:57 ` mmotm 2013-06-27-16-36 uploaded (v4l2 without I2C) Randy Dunlap
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20130628153828.GA24371@redhat.com \ --to=oleg@redhat.com \ --cc=akpm@linux-foundation.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=linux-next@vger.kernel.org \ --cc=mm-commits@vger.kernel.org \ --cc=rdunlap@infradead.org \ --cc=sfr@canb.auug.org.au \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.