Update barriers for x86/x86-64
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
@@ -1,12 +1,9 @@
|
|||||||
#ifndef LIBURING_BARRIER_H
|
#ifndef LIBURING_BARRIER_H
|
||||||
#define LIBURING_BARRIER_H
|
#define LIBURING_BARRIER_H
|
||||||
|
|
||||||
#if defined(__x86_64)
|
#if defined(__x86_64) || defined(__i386__)
|
||||||
#define read_barrier() __asm__ __volatile__("lfence":::"memory")
|
#define read_barrier() __asm__ __volatile__("":::"memory")
|
||||||
#define write_barrier() __asm__ __volatile__("sfence":::"memory")
|
#define write_barrier() __asm__ __volatile__("":::"memory")
|
||||||
#elif defined(__i386__)
|
|
||||||
#define read_barrier() __asm__ __volatile__("": : :"memory")
|
|
||||||
#define write_barrier() __asm__ __volatile__("": : :"memory")
|
|
||||||
#else
|
#else
|
||||||
/*
|
/*
|
||||||
* Add arch appropriate definitions. Be safe and use full barriers for
|
* Add arch appropriate definitions. Be safe and use full barriers for
|
||||||
|
|||||||
Reference in New Issue
Block a user