Skip to content

Commit d58d82b

Browse files
committed
io_uring/uring_cmd: use cached cmd_op in io_uring_cmd_sock()
io_uring_cmd_sock() does a normal read of cmd->sqe->cmd_op, where it really should be using a READ_ONCE() as ->sqe may still be pointing to the original SQE. Since the prep side already does this READ_ONCE() and stores it locally, use that value rather than re-read it. Fixes: 8e9fad0 ("io_uring: Add io_uring command support for sockets") Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jens Axboe <[email protected]>
1 parent 69a62e0 commit d58d82b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

io_uring/uring_cmd.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,7 @@ int io_uring_cmd_sock(struct io_uring_cmd *cmd, unsigned int issue_flags)
350350
if (!prot || !prot->ioctl)
351351
return -EOPNOTSUPP;
352352

353-
switch (cmd->sqe->cmd_op) {
353+
switch (cmd->cmd_op) {
354354
case SOCKET_URING_OP_SIOCINQ:
355355
ret = prot->ioctl(sk, SIOCINQ, &arg);
356356
if (ret)

0 commit comments

Comments
 (0)