On Wed, Apr 27, 2016 at 03:13:54PM +0200, Alexander Gordeev wrote: > Make x86 consistent with other architectures and put > memory barrier defines to lib/x86/asm/barrier.h > > Cc: Andrew Jones <drjones@xxxxxxxxxx> > Cc: Thomas Huth <thuth@xxxxxxxxxx> > Cc: Radim Krčmář <rkrcmar@xxxxxxxxxx> > Signed-off-by: Alexander Gordeev <agordeev@xxxxxxxxxx> > --- > lib/x86/asm/barrier.h | 8 ++++++++ > lib/x86/asm/io.h | 1 + > lib/x86/smp.h | 4 ---- > x86/kvmclock.c | 1 + > 4 files changed, 10 insertions(+), 4 deletions(-) > create mode 100644 lib/x86/asm/barrier.h Reviewed-by: Andrew Jones <drjones@xxxxxxxxxx> > > diff --git a/lib/x86/asm/barrier.h b/lib/x86/asm/barrier.h > new file mode 100644 > index 0000000..0ca1c56 > --- /dev/null > +++ b/lib/x86/asm/barrier.h > @@ -0,0 +1,8 @@ > +#ifndef _ASM_X86_BARRIER_H_ > +#define _ASM_X86_BARRIER_H_ > + > +#define mb() asm volatile("mfence":::"memory") > +#define rmb() asm volatile("lfence":::"memory") > +#define wmb() asm volatile("sfence" ::: "memory") > + > +#endif > diff --git a/lib/x86/asm/io.h b/lib/x86/asm/io.h > index 68b10e5..5b901a3 100644 > --- a/lib/x86/asm/io.h > +++ b/lib/x86/asm/io.h > @@ -2,6 +2,7 @@ > #define _ASM_X86_IO_H_ > > #include "asm/page.h" > +#include "asm/barrier.h" > > static inline unsigned char inb(unsigned short port) > { > diff --git a/lib/x86/smp.h b/lib/x86/smp.h > index 566018f..afabac8 100644 > --- a/lib/x86/smp.h > +++ b/lib/x86/smp.h > @@ -2,10 +2,6 @@ > #define __SMP_H > #include <asm/spinlock.h> > > -#define mb() asm volatile("mfence":::"memory") > -#define rmb() asm volatile("lfence":::"memory") > -#define wmb() asm volatile("sfence" ::: "memory") > - > void smp_init(void); > > int cpu_count(void); > diff --git a/x86/kvmclock.c b/x86/kvmclock.c > index 327e60d..208d43c 100644 > --- a/x86/kvmclock.c > +++ b/x86/kvmclock.c > @@ -3,6 +3,7 @@ > #include "atomic.h" > #include "processor.h" > #include "kvmclock.h" > +#include "asm/barrier.h" > > #define unlikely(x) __builtin_expect(!!(x), 0) > #define likely(x) __builtin_expect(!!(x), 1) > -- > 1.8.3.1 > > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html