Lines Matching refs:v
26 int _atomic_xchg(atomic_t *v, int n);
27 int _atomic_xchg_add(atomic_t *v, int i);
28 int _atomic_xchg_add_unless(atomic_t *v, int a, int u);
29 int _atomic_cmpxchg(atomic_t *v, int o, int n);
38 static inline int atomic_xchg(atomic_t *v, int n) in atomic_xchg() argument
41 return _atomic_xchg(v, n); in atomic_xchg()
53 static inline int atomic_cmpxchg(atomic_t *v, int o, int n) in atomic_cmpxchg() argument
56 return _atomic_cmpxchg(v, o, n); in atomic_cmpxchg()
66 static inline void atomic_add(int i, atomic_t *v) in atomic_add() argument
68 _atomic_xchg_add(v, i); in atomic_add()
78 static inline int atomic_add_return(int i, atomic_t *v) in atomic_add_return() argument
81 return _atomic_xchg_add(v, i) + i; in atomic_add_return()
93 static inline int __atomic_add_unless(atomic_t *v, int a, int u) in __atomic_add_unless() argument
96 return _atomic_xchg_add_unless(v, a, u); in __atomic_add_unless()
109 static inline void atomic_set(atomic_t *v, int n) in atomic_set() argument
111 _atomic_xchg(v, n); in atomic_set()
122 u64 _atomic64_xchg(atomic64_t *v, u64 n);
123 u64 _atomic64_xchg_add(atomic64_t *v, u64 i);
124 u64 _atomic64_xchg_add_unless(atomic64_t *v, u64 a, u64 u);
125 u64 _atomic64_cmpxchg(atomic64_t *v, u64 o, u64 n);
133 static inline u64 atomic64_read(const atomic64_t *v) in atomic64_read() argument
140 return _atomic64_xchg_add((atomic64_t *)v, 0); in atomic64_read()
150 static inline u64 atomic64_xchg(atomic64_t *v, u64 n) in atomic64_xchg() argument
153 return _atomic64_xchg(v, n); in atomic64_xchg()
165 static inline u64 atomic64_cmpxchg(atomic64_t *v, u64 o, u64 n) in atomic64_cmpxchg() argument
168 return _atomic64_cmpxchg(v, o, n); in atomic64_cmpxchg()
178 static inline void atomic64_add(u64 i, atomic64_t *v) in atomic64_add() argument
180 _atomic64_xchg_add(v, i); in atomic64_add()
190 static inline u64 atomic64_add_return(u64 i, atomic64_t *v) in atomic64_add_return() argument
193 return _atomic64_xchg_add(v, i) + i; in atomic64_add_return()
205 static inline u64 atomic64_add_unless(atomic64_t *v, u64 a, u64 u) in atomic64_add_unless() argument
208 return _atomic64_xchg_add_unless(v, a, u) != u; in atomic64_add_unless()
221 static inline void atomic64_set(atomic64_t *v, u64 n) in atomic64_set() argument
223 _atomic64_xchg(v, n); in atomic64_set()
226 #define atomic64_add_negative(a, v) (atomic64_add_return((a), (v)) < 0) argument
227 #define atomic64_inc(v) atomic64_add(1LL, (v)) argument
228 #define atomic64_inc_return(v) atomic64_add_return(1LL, (v)) argument
229 #define atomic64_inc_and_test(v) (atomic64_inc_return(v) == 0) argument
230 #define atomic64_sub_return(i, v) atomic64_add_return(-(i), (v)) argument
231 #define atomic64_sub_and_test(a, v) (atomic64_sub_return((a), (v)) == 0) argument
232 #define atomic64_sub(i, v) atomic64_add(-(i), (v)) argument
233 #define atomic64_dec(v) atomic64_sub(1LL, (v)) argument
234 #define atomic64_dec_return(v) atomic64_sub_return(1LL, (v)) argument
235 #define atomic64_dec_and_test(v) (atomic64_dec_return((v)) == 0) argument
236 #define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1LL, 0LL) argument