io_uring: allow use of offset == -1 to mean file position
authorJens Axboe <axboe@kernel.dk>
Wed, 25 Dec 2019 23:33:42 +0000 (16:33 -0700)
committerJens Axboe <axboe@kernel.dk>
Wed, 15 Jan 2020 22:05:01 +0000 (15:05 -0700)
commit22e0e1611f2ff024b831d64d4f7a0d0c7b27bc4b
tree01461cbd28b504a0fc3d9cbefae096f176ae0ebf
parent3c71e7797105b3e9e14e0650885b71098aabed0b
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.

Reported-by: 李通洲 <carter.li@eoitek.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c
include/uapi/linux/io_uring.h