summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2016-10-07 10:40:59 -0700
committerWilly Tarreau <w@1wt.eu>2017-02-10 11:04:09 +0100
commit63d7f335d653b9a63ecf1f75f73c82f41870a7af (patch)
tree04e7cdf69155002ee8b89c348579903093c7dc82
parent16654a56f02b36e9377d991853227f598d3bdbf6 (diff)
downloadlinux-stable-63d7f335d653b9a63ecf1f75f73c82f41870a7af.tar.gz
linux-stable-63d7f335d653b9a63ecf1f75f73c82f41870a7af.tar.bz2
linux-stable-63d7f335d653b9a63ecf1f75f73c82f41870a7af.zip
metag: Only define atomic_dec_if_positive conditionally
commit 35d04077ad96ed33ceea2501f5a4f1eacda77218 upstream. The definition of atomic_dec_if_positive() assumes that atomic_sub_if_positive() exists, which is only the case if metag specific atomics are used. This results in the following build error when trying to build metag1_defconfig. kernel/ucount.c: In function 'dec_ucount': kernel/ucount.c:211: error: implicit declaration of function 'atomic_sub_if_positive' Moving the definition of atomic_dec_if_positive() into the metag conditional code fixes the problem. Fixes: 6006c0d8ce94 ("metag: Atomics, locks and bitops") Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: James Hogan <james.hogan@imgtec.com> Signed-off-by: Willy Tarreau <w@1wt.eu>
-rw-r--r--arch/metag/include/asm/atomic.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/metag/include/asm/atomic.h b/arch/metag/include/asm/atomic.h
index 307ecd2bd9a1..d7d6b9e53e44 100644
--- a/arch/metag/include/asm/atomic.h
+++ b/arch/metag/include/asm/atomic.h
@@ -38,6 +38,7 @@
#define atomic_dec(v) atomic_sub(1, (v))
#define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0)
+#define atomic_dec_if_positive(v) atomic_sub_if_positive(1, v)
#define smp_mb__before_atomic_dec() barrier()
#define smp_mb__after_atomic_dec() barrier()
@@ -46,8 +47,6 @@
#endif
-#define atomic_dec_if_positive(v) atomic_sub_if_positive(1, v)
-
#include <asm-generic/atomic64.h>
#endif /* __ASM_METAG_ATOMIC_H */