]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
io_uring: add helper io_uring_cmd_ctx_handle()
authorMing Lei <ming.lei@redhat.com>
Thu, 22 May 2025 15:20:39 +0000 (23:20 +0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 22 May 2025 16:03:55 +0000 (10:03 -0600)
Add helper io_uring_cmd_ctx_handle() for driver to track per-context
resource, such as registered kernel io buffer.

Suggested-by: Caleb Sander Mateos <csander@purestorage.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Caleb Sander Mateos <csander@purestorage.com>
Link: https://lore.kernel.org/r/20250522152043.399824-2-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/io_uring/cmd.h

index 0634a3de1782942037ffbe4efe810d3d209d95c8..53408124c1e50194770bdd0a4ae54781c60ba5aa 100644 (file)
@@ -140,6 +140,15 @@ static inline struct io_uring_cmd_data *io_uring_cmd_get_async_data(struct io_ur
        return cmd_to_io_kiocb(cmd)->async_data;
 }
 
+/*
+ * Return uring_cmd's context reference as its context handle for driver to
+ * track per-context resource, such as registered kernel IO buffer
+ */
+static inline void *io_uring_cmd_ctx_handle(struct io_uring_cmd *cmd)
+{
+       return cmd_to_io_kiocb(cmd)->ctx;
+}
+
 int io_buffer_register_bvec(struct io_uring_cmd *cmd, struct request *rq,
                            void (*release)(void *), unsigned int index,
                            unsigned int issue_flags);