#ifndef _KERNEL_AMD64_MEMORYBARRIER_H #define _KERNEL_AMD64_MEMORYBARRIER_H #define memory_barrier() \ do { \ __asm__ volatile("mfence" ::: "memory"); \ } while (0) #define read_memory_barrier() \ do { \ __asm__ volatile("lfence" ::: "memory"); \ } while (0) #define write_memory_barrier() \ do { \ __asm__ volatile("sfence" ::: "memory"); \ } while (0) #endif // _KERNEL_AMD64_MEMORYBARRIER_H