X-Git-Url: https://code.grnet.gr/git/archipelago/blobdiff_plain/29040276f2d31d19b0062ec04633b5b7264050f7..2ddecabedce388e321dd00e490e266dc28467902:/xseg/xtypes/xlock.h?ds=inline diff --git a/xseg/xtypes/xlock.h b/xseg/xtypes/xlock.h index 7a019bb..8b14302 100644 --- a/xseg/xtypes/xlock.h +++ b/xseg/xtypes/xlock.h @@ -28,11 +28,12 @@ static inline unsigned long xlock_acquire(struct xlock *lock, unsigned long who) static inline unsigned long xlock_try_lock(struct xlock *lock, unsigned long who) { - return __sync_bool_compare_and_swap(&lock->owner, Noone, who) + return __sync_bool_compare_and_swap(&lock->owner, Noone, who); } static inline void xlock_release(struct xlock *lock) { + BARRIER(); lock->owner = Noone; }