]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
io_uring/cmd: rename struct uring_cache to io_uring_cmd_data
authorJens Axboe <axboe@kernel.dk>
Fri, 3 Jan 2025 15:02:23 +0000 (15:02 +0000)
committerDavid Sterba <dsterba@suse.com>
Mon, 6 Jan 2025 12:51:05 +0000 (13:51 +0100)
In preparation for making this more generically available for
->uring_cmd() usage that needs stable command data, rename it and move
it to io_uring/cmd.h instead.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: David Sterba <dsterba@suse.com>
include/linux/io_uring/cmd.h
io_uring/io_uring.c
io_uring/opdef.c
io_uring/uring_cmd.c
io_uring/uring_cmd.h

index c189d36ad55ea6c28056aacd199d40deb1900865..24cff2b9b9d4d98ae571dd0c523808c49bae7e8f 100644 (file)
@@ -18,6 +18,10 @@ struct io_uring_cmd {
        u8              pdu[32]; /* available inline for free use */
 };
 
+struct io_uring_cmd_data {
+       struct io_uring_sqe     sqes[2];
+};
+
 static inline const void *io_uring_sqe_cmd(const struct io_uring_sqe *sqe)
 {
        return sqe->cmd;
index b2736e3491b86222fb78012866e40bab0a2b05bc..8ae6bf746fcc5f8ea77ef7399e00af9a60ba7f0a 100644 (file)
@@ -315,7 +315,7 @@ static __cold struct io_ring_ctx *io_ring_ctx_alloc(struct io_uring_params *p)
        ret |= io_alloc_cache_init(&ctx->rw_cache, IO_ALLOC_CACHE_MAX,
                            sizeof(struct io_async_rw));
        ret |= io_alloc_cache_init(&ctx->uring_cache, IO_ALLOC_CACHE_MAX,
-                           sizeof(struct uring_cache));
+                           sizeof(struct io_uring_cmd_data));
        spin_lock_init(&ctx->msg_lock);
        ret |= io_alloc_cache_init(&ctx->msg_cache, IO_ALLOC_CACHE_MAX,
                            sizeof(struct io_kiocb));
index a2be3bbca5ffa17ed4295bfbec80d4abc1369462..c7746f67cc65f2a288b72eeac12900013b40f06c 100644 (file)
@@ -7,6 +7,7 @@
 #include <linux/fs.h>
 #include <linux/file.h>
 #include <linux/io_uring.h>
+#include <linux/io_uring/cmd.h>
 
 #include "io_uring.h"
 #include "opdef.h"
@@ -414,7 +415,7 @@ const struct io_issue_def io_issue_defs[] = {
                .plug                   = 1,
                .iopoll                 = 1,
                .iopoll_queue           = 1,
-               .async_size             = 2 * sizeof(struct io_uring_sqe),
+               .async_size             = sizeof(struct io_uring_cmd_data),
                .prep                   = io_uring_cmd_prep,
                .issue                  = io_uring_cmd,
        },
index e2e8485932d64dd73e34b68906b421a2931af246..eefc203a1214468248b496072af5663eb7fe3063 100644 (file)
 #include "rsrc.h"
 #include "uring_cmd.h"
 
-static struct uring_cache *io_uring_async_get(struct io_kiocb *req)
+static struct io_uring_cmd_data *io_uring_async_get(struct io_kiocb *req)
 {
        struct io_ring_ctx *ctx = req->ctx;
-       struct uring_cache *cache;
+       struct io_uring_cmd_data *cache;
 
        cache = io_alloc_cache_get(&ctx->uring_cache);
        if (cache) {
@@ -35,7 +35,7 @@ static struct uring_cache *io_uring_async_get(struct io_kiocb *req)
 static void io_req_uring_cleanup(struct io_kiocb *req, unsigned int issue_flags)
 {
        struct io_uring_cmd *ioucmd = io_kiocb_to_cmd(req, struct io_uring_cmd);
-       struct uring_cache *cache = req->async_data;
+       struct io_uring_cmd_data *cache = req->async_data;
 
        if (issue_flags & IO_URING_F_UNLOCKED)
                return;
@@ -183,7 +183,7 @@ static int io_uring_cmd_prep_setup(struct io_kiocb *req,
                                   const struct io_uring_sqe *sqe)
 {
        struct io_uring_cmd *ioucmd = io_kiocb_to_cmd(req, struct io_uring_cmd);
-       struct uring_cache *cache;
+       struct io_uring_cmd_data *cache;
 
        cache = io_uring_async_get(req);
        if (unlikely(!cache))
@@ -256,7 +256,7 @@ int io_uring_cmd(struct io_kiocb *req, unsigned int issue_flags)
 
        ret = file->f_op->uring_cmd(ioucmd, issue_flags);
        if (ret == -EAGAIN) {
-               struct uring_cache *cache = req->async_data;
+               struct io_uring_cmd_data *cache = req->async_data;
 
                if (ioucmd->sqe != (void *) cache)
                        memcpy(cache, ioucmd->sqe, uring_sqe_size(req->ctx));
index a361f98664d2de6b6b7a260261fedba884f155a7..515823ca68b856adaf5e1a64f7171579d0c96291 100644 (file)
@@ -1,9 +1,5 @@
 // SPDX-License-Identifier: GPL-2.0
 
-struct uring_cache {
-       struct io_uring_sqe sqes[2];
-};
-
 int io_uring_cmd(struct io_kiocb *req, unsigned int issue_flags);
 int io_uring_cmd_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe);