History

io_uring: allow use of offset == -1 to mean file position

This behaves like preadv2/pwritev2 with offset == -1, it'll use (and update) the current file position. This obviously comes with the caveat that if the application has multiple read/writes in flight, then the end result will not be as expected. This is similar to threads sharing a file descriptor and doing IO using the current file position. Since this feature isn't easily detectable by doing a read or write, add a feature flags, IORING_FEAT_RW_CUR_POS, to allow applications to detect presence of this feature.

Jens Axboe committed 6 years ago

Commit ba042911 parent 3a6820f2 files · +11 −1Browse files

Showing the changes to include/uapi/linux (1 of 2 files). Show all

Unified · Split

include/uapi/linux/io_uring.h+1−0
@@ -174,6 +174,7 @@ struct io_uring_params { · 173 unmodified lines
174174 #define IORING_FEAT_SINGLE_MMAP (1U << 0)
175175 #define IORING_FEAT_NODROP (1U << 1)
176176 #define IORING_FEAT_SUBMIT_STABLE (1U << 2)
177+#define IORING_FEAT_RW_CUR_POS (1U << 3)
177178
178179 /*
179180 * io_uring_register(2) opcodes and arguments