io_uring/zcrx: remove sqe->file_index check

sqe->file_index and sqe->zcrx_ifq_idx are aliased, so even though
io_recvzc_prep() has all necessary handling and checking for
->zcrx_ifq_idx, it's already rejected a couple of lines above.

It's not a real problem, however, as we can only have one ifq at the
moment, which index is always zero, and it returns correct error
codes to the user.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/b51acedd326d1a87bf53e33303e6fc87661a3e3f.1745141261.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
pull/1250/head
Pavel Begunkov 2025-04-20 10:31:17 +01:00 committed by Jens Axboe
parent a79154ae5d
commit 59bc1ab922
1 changed files with 1 additions and 2 deletions

View File

@ -1185,8 +1185,7 @@ int io_recvzc_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe)
struct io_recvzc *zc = io_kiocb_to_cmd(req, struct io_recvzc); struct io_recvzc *zc = io_kiocb_to_cmd(req, struct io_recvzc);
unsigned ifq_idx; unsigned ifq_idx;
if (unlikely(sqe->file_index || sqe->addr2 || sqe->addr || if (unlikely(sqe->addr2 || sqe->addr || sqe->addr3))
sqe->addr3))
return -EINVAL; return -EINVAL;
ifq_idx = READ_ONCE(sqe->zcrx_ifq_idx); ifq_idx = READ_ONCE(sqe->zcrx_ifq_idx);