fix mt-mapperd pithos read bug. plus some minor fixes
[archipelago] / xseg / xtypes / xlock.h
index 7a019bb..8b14302 100644 (file)
@@ -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)
 {
 
 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)
 {
 }
 
 static inline void xlock_release(struct xlock *lock)
 {
+       BARRIER();
        lock->owner = Noone;
 }
 
        lock->owner = Noone;
 }