diff options
author | Roel Kluin <roel.kluin@gmail.com> | 2009-05-17 18:18:58 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-05-18 08:34:08 -0700 |
commit | bac9caf016bf147af7d3afbe7580a7f773cb1566 (patch) | |
tree | 61593e1f5596702aefea7e49ca8c3cfaaeb225e7 /include/asm-generic/local.h | |
parent | 22ef37eed673587ac984965dc88ba94c68873291 (diff) | |
download | lwn-bac9caf016bf147af7d3afbe7580a7f773cb1566.tar.gz lwn-bac9caf016bf147af7d3afbe7580a7f773cb1566.zip |
asm-generic: fix local_add_unless macro
`local_add_unless(x, y, z)' will be expanded to `(&(x)->y, (y), (x))', but
`&(x)->y' should be `&(x)->a'
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/asm-generic/local.h')
-rw-r--r-- | include/asm-generic/local.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/asm-generic/local.h b/include/asm-generic/local.h index dbd6150763e9..fc218444e315 100644 --- a/include/asm-generic/local.h +++ b/include/asm-generic/local.h @@ -42,7 +42,7 @@ typedef struct #define local_cmpxchg(l, o, n) atomic_long_cmpxchg((&(l)->a), (o), (n)) #define local_xchg(l, n) atomic_long_xchg((&(l)->a), (n)) -#define local_add_unless(l, a, u) atomic_long_add_unless((&(l)->a), (a), (u)) +#define local_add_unless(l, _a, u) atomic_long_add_unless((&(l)->a), (_a), (u)) #define local_inc_not_zero(l) atomic_long_inc_not_zero(&(l)->a) /* Non-atomic variants, ie. preemption disabled and won't be touched |