Lines Matching refs:v
20 static inline void generic_atomic_##op(int i, atomic_t *v) \
24 c = v->counter; \
25 while ((old = arch_cmpxchg(&v->counter, c, c c_op i)) != c) \
30 static inline int generic_atomic_##op##_return(int i, atomic_t *v) \
34 c = v->counter; \
35 while ((old = arch_cmpxchg(&v->counter, c, c c_op i)) != c) \
42 static inline int generic_atomic_fetch_##op(int i, atomic_t *v) \
46 c = v->counter; \
47 while ((old = arch_cmpxchg(&v->counter, c, c c_op i)) != c) \
58 static inline void generic_atomic_##op(int i, atomic_t *v) \
63 v->counter = v->counter c_op i; \
68 static inline int generic_atomic_##op##_return(int i, atomic_t *v) \
74 ret = (v->counter = v->counter c_op i); \
81 static inline int generic_atomic_fetch_##op(int i, atomic_t *v) \
87 ret = v->counter; \
88 v->counter = v->counter c_op i; \
130 #define arch_atomic_read(v) READ_ONCE((v)->counter) argument
131 #define arch_atomic_set(v, i) WRITE_ONCE(((v)->counter), (i)) argument
133 #define arch_atomic_xchg(ptr, v) (arch_xchg(&(ptr)->counter, (v))) argument
134 #define arch_atomic_cmpxchg(v, old, new) (arch_cmpxchg(&((v)->counter), (old), (new))) argument