diff options
| author | Johannes Weiner <hannes@cmpxchg.org> | 2009-07-21 11:08:28 -0400 |
|---|---|---|
| committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-10-11 11:25:06 -0400 |
| commit | e9ac829185c5d17787d78c13c05a40c39d660239 (patch) | |
| tree | 295822fefaf2370c9f4ef155dba1d6f225b93b89 | |
| parent | 03a6e5bd5ba7d2a37b0bf4327b83d7c83311b0a1 (diff) | |
ARM: boolean bit testing
Bit testing (test, testset, testclear, testchange) for bit numbers
known at compile time returns a word with the tested-for bit set.
Change it to return a true boolean value so to make it consistent with
the out-of-line path and all the other bitops implementations.
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| -rw-r--r-- | arch/arm/include/asm/bitops.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/arm/include/asm/bitops.h b/arch/arm/include/asm/bitops.h index 63a481fbbed4..338ff19ae447 100644 --- a/arch/arm/include/asm/bitops.h +++ b/arch/arm/include/asm/bitops.h | |||
| @@ -84,7 +84,7 @@ ____atomic_test_and_set_bit(unsigned int bit, volatile unsigned long *p) | |||
| 84 | *p = res | mask; | 84 | *p = res | mask; |
| 85 | raw_local_irq_restore(flags); | 85 | raw_local_irq_restore(flags); |
| 86 | 86 | ||
| 87 | return res & mask; | 87 | return (res & mask) != 0; |
| 88 | } | 88 | } |
| 89 | 89 | ||
| 90 | static inline int | 90 | static inline int |
| @@ -101,7 +101,7 @@ ____atomic_test_and_clear_bit(unsigned int bit, volatile unsigned long *p) | |||
| 101 | *p = res & ~mask; | 101 | *p = res & ~mask; |
| 102 | raw_local_irq_restore(flags); | 102 | raw_local_irq_restore(flags); |
| 103 | 103 | ||
| 104 | return res & mask; | 104 | return (res & mask) != 0; |
| 105 | } | 105 | } |
| 106 | 106 | ||
| 107 | static inline int | 107 | static inline int |
| @@ -118,7 +118,7 @@ ____atomic_test_and_change_bit(unsigned int bit, volatile unsigned long *p) | |||
| 118 | *p = res ^ mask; | 118 | *p = res ^ mask; |
| 119 | raw_local_irq_restore(flags); | 119 | raw_local_irq_restore(flags); |
| 120 | 120 | ||
| 121 | return res & mask; | 121 | return (res & mask) != 0; |
| 122 | } | 122 | } |
| 123 | 123 | ||
| 124 | #include <asm-generic/bitops/non-atomic.h> | 124 | #include <asm-generic/bitops/non-atomic.h> |
