]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Revert "sched/wait: Suppress Sparse 'variable shadowing' warning"
authorIngo Molnar <mingo@kernel.org>
Thu, 27 Feb 2014 11:20:31 +0000 (12:20 +0100)
committerIngo Molnar <mingo@kernel.org>
Thu, 27 Feb 2014 11:20:31 +0000 (12:20 +0100)
This reverts commit 980f88e414418bf65569a3b62b08b07e6fc2f4c6.

This warning is actually useful, don't suppress it.

We actually rely on the shadowing for ___wait_cond_timeout().

We further used the __ret variable in __wait_event_timeout()'s cmd
argument: __ret = schedule_timeout(__ret). That now explicitly uses the
wrong __ret.

Reported-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Requested-by: Andrew Morton <akpm@linux-foundation.org>
Requested-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/n/tip-Q5blhuqqzwgVwvjf1gszrdol@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
include/linux/wait.h

index c55ea5c24404decaafeff496d062fa5d85eab5eb..559044c79232dcd27b18a3203d82295866fe949f 100644 (file)
@@ -195,7 +195,7 @@ wait_queue_head_t *bit_waitqueue(void *, int);
 ({                                                                     \
        __label__ __out;                                                \
        wait_queue_t __wait;                                            \
-       long ___ret = ret;                                              \
+       long __ret = ret;                                               \
                                                                        \
        INIT_LIST_HEAD(&__wait.task_list);                              \
        if (exclusive)                                                  \
@@ -210,7 +210,7 @@ wait_queue_head_t *bit_waitqueue(void *, int);
                        break;                                          \
                                                                        \
                if (___wait_is_interruptible(state) && __int) {         \
-                       ___ret = __int;                                 \
+                       __ret = __int;                                  \
                        if (exclusive) {                                \
                                abort_exclusive_wait(&wq, &__wait,      \
                                                     state, NULL);      \
@@ -222,7 +222,7 @@ wait_queue_head_t *bit_waitqueue(void *, int);
                cmd;                                                    \
        }                                                               \
        finish_wait(&wq, &__wait);                                      \
-__out: ___ret;                                                         \
+__out: __ret;                                                          \
 })
 
 #define __wait_event(wq, condition)                                    \