aboutsummaryrefslogtreecommitdiffstats
path: root/lib/atomic64_test.c
diff options
context:
space:
mode:
authorLuca Barbieri <luca@luca-barbieri.com>2010-02-26 06:22:40 -0500
committerH. Peter Anvin <hpa@zytor.com>2010-03-01 14:37:55 -0500
commit8f4f202b335144bf5be5c9e5b1bc9477ecdae958 (patch)
treea1bc2508079fe2312e87a8a29d8553f4985148d6 /lib/atomic64_test.c
parenta7e926abc3adfbd2e5e20d2b46177adb4e313915 (diff)
lib: Only test atomic64_dec_if_positive on archs having it
Currently atomic64_dec_if_positive() is only supported by PowerPC, MIPS and x86-32. Signed-off-by: Luca Barbieri <luca@luca-barbieri.com> LKML-Reference: <1267183361-20775-1-git-send-email-luca@luca-barbieri.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'lib/atomic64_test.c')
-rw-r--r--lib/atomic64_test.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/atomic64_test.c b/lib/atomic64_test.c
index 4ff649e46bad..0effcacbebda 100644
--- a/lib/atomic64_test.c
+++ b/lib/atomic64_test.c
@@ -112,6 +112,7 @@ static __init int test_atomic64(void)
112 r += one; 112 r += one;
113 BUG_ON(v.counter != r); 113 BUG_ON(v.counter != r);
114 114
115#if defined(CONFIG_X86_32) || defined(CONFIG_MIPS) || defined(CONFIG_PPC) || defined(_ASM_GENERIC_ATOMIC64_H)
115 INIT(onestwos); 116 INIT(onestwos);
116 BUG_ON(atomic64_dec_if_positive(&v) != (onestwos - 1)); 117 BUG_ON(atomic64_dec_if_positive(&v) != (onestwos - 1));
117 r -= one; 118 r -= one;
@@ -124,6 +125,9 @@ static __init int test_atomic64(void)
124 INIT(-one); 125 INIT(-one);
125 BUG_ON(atomic64_dec_if_positive(&v) != (-one - one)); 126 BUG_ON(atomic64_dec_if_positive(&v) != (-one - one));
126 BUG_ON(v.counter != r); 127 BUG_ON(v.counter != r);
128#else
129#warning Please implement atomic64_dec_if_positive for your architecture, and add it to the IF above
130#endif
127 131
128 INIT(onestwos); 132 INIT(onestwos);
129 BUG_ON(atomic64_inc_not_zero(&v)); 133 BUG_ON(atomic64_inc_not_zero(&v));