On Thu, 27 Jun 2013 22:30:41 -0700 Randy Dunlap <[email protected]> wrote:

> On 06/27/13 16:37, [email protected] wrote:
> > The mm-of-the-moment snapshot 2013-06-27-16-36 has been uploaded to
> > 
> >    http://www.ozlabs.org/~akpm/mmotm/
> > 
> > mmotm-readme.txt says
> > 
> > README for mm-of-the-moment:
> > 
> > http://www.ozlabs.org/~akpm/mmotm/
> > 
> 
> 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;
> 

Ah, sorry, I missed that.  Had I noticed it, I would have spat it back
on taste grounds alone, it being unfit for human consumption.

Something like this?

--- 
a/include/linux/wait.h~wait-introduce-wait_event_commonwq-condition-state-timeout-fix
+++ a/include/linux/wait.h
@@ -196,7 +196,11 @@ wait_queue_head_t *bit_waitqueue(void *,
        for (;;) {                                                      \
                prepare_to_wait(&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;                                          \
                }                                                       \
                                                                        \


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to