OSDN Git Service

seqlock: avoid -Wshadow warnings
authorArnd Bergmann <arnd@arndb.de>
Mon, 26 Oct 2020 16:50:38 +0000 (17:50 +0100)
committerPeter Zijlstra <peterz@infradead.org>
Thu, 3 Dec 2020 10:20:50 +0000 (11:20 +0100)
When building with W=2, there is a flood of warnings about the seqlock
macros shadowing local variables:

  19806 linux/seqlock.h:331:11: warning: declaration of 'seq' shadows a previous local [-Wshadow]
     48 linux/seqlock.h:348:11: warning: declaration of 'seq' shadows a previous local [-Wshadow]
      8 linux/seqlock.h:379:11: warning: declaration of 'seq' shadows a previous local [-Wshadow]

Prefix the local variables to make the warning useful elsewhere again.

Fixes: 52ac39e5db51 ("seqlock: seqcount_t: Implement all read APIs as statement expressions")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20201026165044.3722931-1-arnd@kernel.org
include/linux/seqlock.h

index cbfc78b..8d85524 100644 (file)
@@ -328,13 +328,13 @@ SEQCOUNT_LOCKNAME(ww_mutex,     struct ww_mutex, true,     &s->lock->base, ww_mu
  */
 #define __read_seqcount_begin(s)                                       \
 ({                                                                     \
-       unsigned seq;                                                   \
+       unsigned __seq;                                                 \
                                                                        \
-       while ((seq = __seqcount_sequence(s)) & 1)                      \
+       while ((__seq = __seqcount_sequence(s)) & 1)                    \
                cpu_relax();                                            \
                                                                        \
        kcsan_atomic_next(KCSAN_SEQLOCK_REGION_MAX);                    \
-       seq;                                                            \
+       __seq;                                                          \
 })
 
 /**
@@ -345,10 +345,10 @@ SEQCOUNT_LOCKNAME(ww_mutex,     struct ww_mutex, true,     &s->lock->base, ww_mu
  */
 #define raw_read_seqcount_begin(s)                                     \
 ({                                                                     \
-       unsigned seq = __read_seqcount_begin(s);                        \
+       unsigned _seq = __read_seqcount_begin(s);                       \
                                                                        \
        smp_rmb();                                                      \
-       seq;                                                            \
+       _seq;                                                           \
 })
 
 /**
@@ -376,11 +376,11 @@ SEQCOUNT_LOCKNAME(ww_mutex,     struct ww_mutex, true,     &s->lock->base, ww_mu
  */
 #define raw_read_seqcount(s)                                           \
 ({                                                                     \
-       unsigned seq = __seqcount_sequence(s);                          \
+       unsigned __seq = __seqcount_sequence(s);                        \
                                                                        \
        smp_rmb();                                                      \
        kcsan_atomic_next(KCSAN_SEQLOCK_REGION_MAX);                    \
-       seq;                                                            \
+       __seq;                                                          \
 })
 
 /**