summaryrefslogtreecommitdiff
path: root/io_uring/kbuf.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2025-08-20 20:03:36 -0600
committerJens Axboe <axboe@kernel.dk>2025-08-24 11:41:12 -0600
commit429884ff35f75a8ac3e8f822f483e220e3ea6394 (patch)
treeb6535139e41f9e0bea0964c579ceaa8bd8e6e3ba /io_uring/kbuf.h
parentd8e1dec2f860ee40623609aa6c4f22e1ee45605d (diff)
downloadlwn-429884ff35f75a8ac3e8f822f483e220e3ea6394.tar.gz
lwn-429884ff35f75a8ac3e8f822f483e220e3ea6394.zip
io_uring/kbuf: use struct io_br_sel for multiple buffers picking
The networking side uses bundles, which is picking multiple buffers at the same time. Pass in struct io_br_sel to those helpers. Link: https://lore.kernel.org/r/20250821020750.598432-9-axboe@kernel.dk Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'io_uring/kbuf.h')
-rw-r--r--io_uring/kbuf.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/io_uring/kbuf.h b/io_uring/kbuf.h
index e14a43b125c3..b1723c2620da 100644
--- a/io_uring/kbuf.h
+++ b/io_uring/kbuf.h
@@ -80,8 +80,9 @@ struct io_br_sel {
struct io_br_sel io_buffer_select(struct io_kiocb *req, size_t *len,
unsigned buf_group, unsigned int issue_flags);
int io_buffers_select(struct io_kiocb *req, struct buf_sel_arg *arg,
- unsigned int issue_flags);
-int io_buffers_peek(struct io_kiocb *req, struct buf_sel_arg *arg);
+ struct io_br_sel *sel, unsigned int issue_flags);
+int io_buffers_peek(struct io_kiocb *req, struct buf_sel_arg *arg,
+ struct io_br_sel *sel);
void io_destroy_buffers(struct io_ring_ctx *ctx);
int io_remove_buffers_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe);