aboutsummaryrefslogtreecommitdiffstats
path: root/io_uring
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2023-09-28 09:23:27 -0600
committerJens Axboe <axboe@kernel.dk>2023-09-29 03:07:09 -0600
commita52d4f657568d6458e873f74a9602e022afe666f (patch)
tree34566317eb5cca0dd9e5ada9d0cd61b0d7b02c72 /io_uring
parentc21a8027ad8a68c340d0d58bf1cc61dcb0bc4d2f (diff)
downloadlinux-a52d4f657568d6458e873f74a9602e022afe666f.tar.gz
io_uring/fs: remove sqe->rw_flags checking from LINKAT
This is unionized with the actual link flags, so they can of course be set and they will be evaluated further down. If not we fail any LINKAT that has to set option flags. Fixes: cf30da90bc3a ("io_uring: add support for IORING_OP_LINKAT") Cc: stable@vger.kernel.org Reported-by: Thomas Leonard <talex5@gmail.com> Link: https://github.com/axboe/liburing/issues/955 Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring')
-rw-r--r--io_uring/fs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/io_uring/fs.c b/io_uring/fs.c
index f6a69a549fd450..08e3b175469c68 100644
--- a/io_uring/fs.c
+++ b/io_uring/fs.c
@@ -243,7 +243,7 @@ int io_linkat_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe)
struct io_link *lnk = io_kiocb_to_cmd(req, struct io_link);
const char __user *oldf, *newf;
- if (sqe->rw_flags || sqe->buf_index || sqe->splice_fd_in)
+ if (sqe->buf_index || sqe->splice_fd_in)
return -EINVAL;
if (unlikely(req->flags & REQ_F_FIXED_FILE))
return -EBADF;