Page MenuHomeFreeBSD

D53232.id164723.diff
No OneTemporary

D53232.id164723.diff

diff --git a/sys/riscv/include/atomic.h b/sys/riscv/include/atomic.h
--- a/sys/riscv/include/atomic.h
+++ b/sys/riscv/include/atomic.h
@@ -37,10 +37,11 @@
#include <sys/atomic_common.h>
-#define fence() __asm __volatile("fence" ::: "memory");
-#define mb() fence()
-#define rmb() fence()
-#define wmb() fence()
+#define _fence(PRE, SUC) __asm __volatile("fence "#PRE","#SUC ::: "memory");
+#define fence() _fence(rw, rw)
+#define mb() _fence(rw, rw)
+#define rmb() _fence(r, r)
+#define wmb() _fence(w, w)
static __inline int atomic_cmpset_8(__volatile uint8_t *, uint8_t, uint8_t);
static __inline int atomic_fcmpset_8(__volatile uint8_t *, uint8_t *, uint8_t);

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 1, 9:12 AM (16 h, 7 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29107139
Default Alt Text
D53232.id164723.diff (673 B)

Event Timeline