diff options
author | Peter Zijlstra <peterz@infradead.org> | 2015-04-23 19:12:32 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2015-07-27 08:06:24 -0400 |
commit | de9e432cb5de1bf2952919dc0b22e4bec0ed8d53 (patch) | |
tree | f67d751e7d52f45279950f2a7594d7a2ff5a0bbd /arch/mn10300 | |
parent | e6942b7de2dfe44ebde9bae57dadece5abca9de8 (diff) |
atomic: Collapse all atomic_{set,clear}_mask definitions
Move the now generic definitions of atomic_{set,clear}_mask() into
linux/atomic.h to avoid endless and pointless repetition.
Also, provide an atomic_andnot() wrapper for those few archs that can
implement that.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/mn10300')
-rw-r--r-- | arch/mn10300/include/asm/atomic.h | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/arch/mn10300/include/asm/atomic.h b/arch/mn10300/include/asm/atomic.h index f5a63f0bda46..375e59140c9c 100644 --- a/arch/mn10300/include/asm/atomic.h +++ b/arch/mn10300/include/asm/atomic.h | |||
@@ -131,30 +131,6 @@ static inline void atomic_dec(atomic_t *v) | |||
131 | #define atomic_xchg(ptr, v) (xchg(&(ptr)->counter, (v))) | 131 | #define atomic_xchg(ptr, v) (xchg(&(ptr)->counter, (v))) |
132 | #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), (old), (new))) | 132 | #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), (old), (new))) |
133 | 133 | ||
134 | /** | ||
135 | * atomic_clear_mask - Atomically clear bits in memory | ||
136 | * @mask: Mask of the bits to be cleared | ||
137 | * @v: pointer to word in memory | ||
138 | * | ||
139 | * Atomically clears the bits set in mask from the memory word specified. | ||
140 | */ | ||
141 | static inline __deprecated void atomic_clear_mask(unsigned int mask, atomic_t *v) | ||
142 | { | ||
143 | atomic_and(~mask, v); | ||
144 | } | ||
145 | |||
146 | /** | ||
147 | * atomic_set_mask - Atomically set bits in memory | ||
148 | * @mask: Mask of the bits to be set | ||
149 | * @v: pointer to word in memory | ||
150 | * | ||
151 | * Atomically sets the bits set in mask from the memory word specified. | ||
152 | */ | ||
153 | static inline __deprecated void atomic_set_mask(unsigned int mask, atomic_t *v) | ||
154 | { | ||
155 | atomic_or(mask, v); | ||
156 | } | ||
157 | |||
158 | #endif /* __KERNEL__ */ | 134 | #endif /* __KERNEL__ */ |
159 | #endif /* CONFIG_SMP */ | 135 | #endif /* CONFIG_SMP */ |
160 | #endif /* _ASM_ATOMIC_H */ | 136 | #endif /* _ASM_ATOMIC_H */ |