On 15/04/16 17:23, Alex Bennée wrote: > diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h > index 5dba7db..94e7110 100644 > --- a/include/qemu/atomic.h > +++ b/include/qemu/atomic.h > @@ -123,6 +123,16 @@ > _old; \ > }) > > +#define atomic_bool_cmpxchg(ptr, old, new) \ > + ({ \ > + typeof(*ptr) _old = (old), _new = (new); \ > + bool r; \ > + r = __atomic_compare_exchange(ptr, &_old, &_new, false, \ > + __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); \ > + r; \ > + }) > + > +
Could be more simple: #define atomic_bool_cmpxchg(ptr, old, new) \ ({ \ typeof(*ptr) _old = (old), _new = (new); \ __atomic_compare_exchange(ptr, &_old, &_new, false, \ __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); \ }) Kind regards, Sergey