X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-h8300%2Fatomic.h;h=b4cf0ea97ede7a0975271b65f8f9d06d68abaea9;hb=e2bf3cae515090fefe28329e71230dfe7ab873b1;hp=d891541e89c35f09392aa07aa6bbe37f505174b6;hpb=123656d4cc8c946f578ebd18c2050f5251720428;p=linux-2.6 diff --git a/include/asm-h8300/atomic.h b/include/asm-h8300/atomic.h index d891541e89..b4cf0ea97e 100644 --- a/include/asm-h8300/atomic.h +++ b/include/asm-h8300/atomic.h @@ -37,6 +37,7 @@ static __inline__ int atomic_sub_return(int i, atomic_t *v) } #define atomic_sub(i, v) atomic_sub_return(i, v) +#define atomic_sub_and_test(i,v) (atomic_sub_return(i, v) == 0) static __inline__ int atomic_inc_return(atomic_t *v) { @@ -95,6 +96,8 @@ static inline int atomic_cmpxchg(atomic_t *v, int old, int new) return ret; } +#define atomic_xchg(v, new) (xchg(&((v)->counter), new)) + static inline int atomic_add_unless(atomic_t *v, int a, int u) { int ret;