Index: libcfa/src/concurrency/locks.hfa
===================================================================
--- libcfa/src/concurrency/locks.hfa	(revision 2ed32fa79f48cc64f2de86bc0262f9ee73af2f0c)
+++ libcfa/src/concurrency/locks.hfa	(revision 7f6a7c9815ca57db7bd45062dda4b61c275ad2ec)
@@ -533,6 +533,6 @@
 	#endif
 	lock( lock, node );
-	while(held) Pause();
-	held = true;
+	while(__atomic_load_n(&held, __ATOMIC_SEQ_CST)) Pause();
+	__atomic_store_n(&held, true, __ATOMIC_SEQ_CST);
 	unlock( lock, node );
 	#ifdef __CFA_DEBUG__
@@ -545,5 +545,5 @@
 	owner = 0p;
 	#endif
-	held = false;
+	__atomic_store_n(&held, false, __ATOMIC_SEQ_CST);
 }
 
@@ -586,6 +586,6 @@
 	#endif
 	lock( lock );
-	while(held) Pause();
-	held = true;
+	while(__atomic_load_n(&held, __ATOMIC_SEQ_CST)) Pause();
+	__atomic_store_n(&held, true, __ATOMIC_RELEASE);
 	unlock( lock );
 	#ifdef __CFA_DEBUG__
@@ -598,5 +598,5 @@
 	owner = 0p;
 	#endif
-	held = false;
+	__atomic_store_n(&held, false, __ATOMIC_RELEASE);
 }
 
