Message ID | 20230504121856.904491-2-leitao@debian.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | io_uring: Pass the whole sqe to commands | expand |
On Thu, May 04, 2023 at 05:18:54AM -0700, Breno Leitao wrote: > Create a simple helper that returns the size of the SQE. The SQE could > have two size, depending of the flags. > > If IO_URING_SETUP_SQE128 flag is set, then return a double SQE, > otherwise returns the sizeof of io_uring_sqe (64 bytes). > > Signed-off-by: Breno Leitao <leitao@debian.org> > Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Ming Lei <ming.lei@redhat.com> Thanks, Ming
diff --git a/io_uring/io_uring.h b/io_uring/io_uring.h index 25515d69d205..259bf798a390 100644 --- a/io_uring/io_uring.h +++ b/io_uring/io_uring.h @@ -394,4 +394,14 @@ static inline void io_req_queue_tw_complete(struct io_kiocb *req, s32 res) io_req_task_work_add(req); } +/* + * IORING_SETUP_SQE128 contexts allocate twice the normal SQE size for each + * slot. + */ +static inline size_t uring_sqe_size(struct io_ring_ctx *ctx) +{ + if (ctx->flags & IORING_SETUP_SQE128) + return 2 * sizeof(struct io_uring_sqe); + return sizeof(struct io_uring_sqe); +} #endif