summaryrefslogtreecommitdiff
path: root/arch/x86/machine/latomic.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/machine/latomic.h')
-rw-r--r--arch/x86/machine/latomic.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/machine/latomic.h b/arch/x86/machine/latomic.h
index efc8301c..6684d20f 100644
--- a/arch/x86/machine/latomic.h
+++ b/arch/x86/machine/latomic.h
@@ -30,21 +30,21 @@
#include <kern/macros.h>
/*
- * Memory ordering is implemented with compiler barriers on entry, exit,
+ * Memory ordering is implemented with atomic signal fences on entry, exit,
* both, or neither, according to the specified ordering.
*/
#define latomic_x86_enter(memorder) \
MACRO_BEGIN \
if ((memorder) != LATOMIC_RELAXED && (memorder) != LATOMIC_ACQUIRE) { \
- barrier(); \
+ __atomic_signal_fence(__ATOMIC_ACQ_REL); \
} \
MACRO_END
#define latomic_x86_leave(memorder) \
MACRO_BEGIN \
if ((memorder) != LATOMIC_RELAXED && (memorder) != LATOMIC_RELEASE) { \
- barrier(); \
+ __atomic_signal_fence(__ATOMIC_ACQ_REL); \
} \
MACRO_END