XHCI volatile and memory barriers
This commit is contained in:
19
kernel/amd64/memorybarrier.h
Normal file
19
kernel/amd64/memorybarrier.h
Normal file
@@ -0,0 +1,19 @@
|
||||
#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
|
||||
Reference in New Issue
Block a user