1 #ifndef _ASM_X86_BARRIER_H_ 2 #define _ASM_X86_BARRIER_H_ 3 /* 4 * Copyright (C) 2016, Red Hat Inc, Alexander Gordeev <agordeev@redhat.com> 5 * 6 * This work is licensed under the terms of the GNU LGPL, version 2. 7 */ 8 9 #include <processor.h> 10 11 #define mb() asm volatile("mfence":::"memory") 12 #define rmb() asm volatile("lfence":::"memory") 13 #define wmb() asm volatile("sfence":::"memory") 14 15 #define smp_mb() mb() 16 #define smp_rmb() barrier() 17 #define smp_wmb() barrier() 18 19 #endif 20