diff options
author | Jens Axboe <axboe@kernel.dk> | 2019-04-06 21:48:39 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2019-04-06 21:50:15 -0600 |
commit | 61c27f73f8897bb65b2d52942011e4db5306d87a (patch) | |
tree | 98840d13734fb607fa7ddefaaadeb7cad7518198 /src | |
parent | f8b12e48bffc2c74d40a67c8af49b5a32c0f25ac (diff) |
Add barrier fsync test case
Also changes the fsync prep helper to require passing in the actual
flag, not just a boolean for fsync vs fdatasync.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'src')
-rw-r--r-- | src/io_uring.h | 1 | ||||
-rw-r--r-- | src/liburing.h | 5 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/io_uring.h b/src/io_uring.h index e234086..57b8f4d 100644 --- a/src/io_uring.h +++ b/src/io_uring.h @@ -59,6 +59,7 @@ struct io_uring_sqe { * sqe->fsync_flags */ #define IORING_FSYNC_DATASYNC (1U << 0) +#define IORING_FSYNC_BARRIER (1U << 1) /* * IO completion data structure (Completion Queue Entry) diff --git a/src/liburing.h b/src/liburing.h index 1cea6a5..5c8b01a 100644 --- a/src/liburing.h +++ b/src/liburing.h @@ -131,13 +131,12 @@ static inline void io_uring_prep_poll_remove(struct io_uring_sqe *sqe, } static inline void io_uring_prep_fsync(struct io_uring_sqe *sqe, int fd, - int datasync) + unsigned fsync_flags) { memset(sqe, 0, sizeof(*sqe)); sqe->opcode = IORING_OP_FSYNC; sqe->fd = fd; - if (datasync) - sqe->fsync_flags = IORING_FSYNC_DATASYNC; + sqe->fsync_flags = fsync_flags; } #endif |