Lines Matching refs:v
20 #define atomic_read(v) READ_ONCE((v)->counter) argument
24 #define atomic_set(v, i) WRITE_ONCE(((v)->counter), (i)) argument
56 static inline void atomic_##op(int i, atomic_t *v) \
70 : [ctr] "r" (&v->counter), /* Not "m": llock only supports reg direct addr mode */ \
76 static inline int atomic_##op##_return(int i, atomic_t *v) \
96 : [ctr] "r" (&v->counter), \
110 #define atomic_set(v, i) WRITE_ONCE(((v)->counter), (i)) argument
114 static inline void atomic_set(atomic_t *v, int i) in atomic_set() argument
128 WRITE_ONCE(v->counter, i); in atomic_set()
140 static inline void atomic_##op(int i, atomic_t *v) \
145 v->counter c_op i; \
150 static inline int atomic_##op##_return(int i, atomic_t *v) \
159 temp = v->counter; \
161 v->counter = temp; \
199 #define __atomic_add_unless(v, a, u) \ argument
209 c = atomic_read(v); \
210 while (c != (u) && (old = atomic_cmpxchg((v), c, c + (a))) != c)\
218 #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) argument
220 #define atomic_inc(v) atomic_add(1, v) argument
221 #define atomic_dec(v) atomic_sub(1, v) argument
223 #define atomic_inc_and_test(v) (atomic_add_return(1, v) == 0) argument
224 #define atomic_dec_and_test(v) (atomic_sub_return(1, v) == 0) argument
225 #define atomic_inc_return(v) atomic_add_return(1, (v)) argument
226 #define atomic_dec_return(v) atomic_sub_return(1, (v)) argument
227 #define atomic_sub_and_test(i, v) (atomic_sub_return(i, v) == 0) argument
229 #define atomic_add_negative(i, v) (atomic_add_return(i, v) < 0) argument