summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
9a9d403)
x86 instructions lfence and sfence are rarely needed, thus we want
the cmm_smp_rmb/cmm_smp_wmb macros to be simple compiler barriers.
So, let the per-arch files override the default definitions in
arch/generic.h.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
#endif
#ifdef CONFIG_RCU_SMP
#endif
#ifdef CONFIG_RCU_SMP
#define cmm_smp_mb() cmm_mb()
#define cmm_smp_mb() cmm_mb()
+#endif
+#ifndef cmm_smp_rmb
#define cmm_smp_rmb() cmm_rmb()
#define cmm_smp_rmb() cmm_rmb()
+#endif
+#ifndef cmm_smp_wmb
#define cmm_smp_wmb() cmm_wmb()
#define cmm_smp_wmb() cmm_wmb()
+#endif
+#ifndef cmm_smp_mc
#define cmm_smp_mc() cmm_mc()
#define cmm_smp_mc() cmm_mc()
+#endif
+#ifndef cmm_smp_rmc
#define cmm_smp_rmc() cmm_rmc()
#define cmm_smp_rmc() cmm_rmc()
+#endif
+#ifndef cmm_smp_wmc
#define cmm_smp_wmc() cmm_wmc()
#define cmm_smp_wmc() cmm_wmc()
+#endif
+#ifndef cmm_smp_read_barrier_depends
#define cmm_smp_read_barrier_depends() cmm_read_barrier_depends()
#define cmm_smp_read_barrier_depends() cmm_read_barrier_depends()
#define cmm_smp_mb() cmm_barrier()
#define cmm_smp_mb() cmm_barrier()
+#endif
+#ifndef cmm_smp_rmb
#define cmm_smp_rmb() cmm_barrier()
#define cmm_smp_rmb() cmm_barrier()
+#endif
+#ifndef cmm_smp_wmb
#define cmm_smp_wmb() cmm_barrier()
#define cmm_smp_wmb() cmm_barrier()
+#endif
+#ifndef cmm_smp_mc
#define cmm_smp_mc() cmm_barrier()
#define cmm_smp_mc() cmm_barrier()
+#endif
+#ifndef cmm_smp_rmc
#define cmm_smp_rmc() cmm_barrier()
#define cmm_smp_rmc() cmm_barrier()
+#endif
+#ifndef cmm_smp_wmc
#define cmm_smp_wmc() cmm_barrier()
#define cmm_smp_wmc() cmm_barrier()
+#endif
+#ifndef cmm_smp_read_barrier_depends
#define cmm_smp_read_barrier_depends()
#endif
#define cmm_smp_read_barrier_depends()
#endif
#ifndef caa_cpu_relax
#define caa_cpu_relax() cmm_barrier()
#ifndef caa_cpu_relax
#define caa_cpu_relax() cmm_barrier()