Thread (51 messages) 51 messages, 6 authors, 2025-02-27

Re: [PATCHv5 02/11] io_uring/nop: reuse req->buf_index

From: Pavel Begunkov <asml.silence@gmail.com>
Date: 2025-02-25 13:12:43
Also in: io-uring

On 2/24/25 21:31, Keith Busch wrote:
From: Keith Busch <kbusch@kernel.org>

There is already a field in io_kiocb that can store a registered buffer
index, use that instead of stashing the value into struct io_nop.
Reviewed-by: Pavel Begunkov <asml.silence@gmail.com>
quoted hunk ↗ jump to hunk
Signed-off-by: Keith Busch <kbusch@kernel.org>
---
  io_uring/nop.c | 7 ++-----
  1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/io_uring/nop.c b/io_uring/nop.c
index 5e5196df650a1..ea539531cb5f6 100644
--- a/io_uring/nop.c
+++ b/io_uring/nop.c
@@ -16,7 +16,6 @@ struct io_nop {
  	struct file     *file;
  	int             result;
  	int		fd;
-	int		buffer;
  	unsigned int	flags;
  };
  
@@ -40,9 +39,7 @@ int io_nop_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe)
  	else
  		nop->fd = -1;
  	if (nop->flags & IORING_NOP_FIXED_BUFFER)
-		nop->buffer = READ_ONCE(sqe->buf_index);
-	else
-		nop->buffer = -1;
+		req->buf_index = READ_ONCE(sqe->buf_index);
  	return 0;
  }
  
@@ -69,7 +66,7 @@ int io_nop(struct io_kiocb *req, unsigned int issue_flags)
  
  		ret = -EFAULT;
  		io_ring_submit_lock(ctx, issue_flags);
-		node = io_rsrc_node_lookup(&ctx->buf_table, nop->buffer);
+		node = io_rsrc_node_lookup(&ctx->buf_table, req->buf_index);
  		if (node) {
  			io_req_assign_buf_node(req, node);
  			ret = 0;
-- 
Pavel Begunkov
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help