selftests: ublk: specify io_cmd_buf pointer type
authorCaleb Sander Mateos <csander@purestorage.com>
Fri, 28 Mar 2025 19:42:30 +0000 (13:42 -0600)
committerJens Axboe <axboe@kernel.dk>
Sat, 29 Mar 2025 11:56:36 +0000 (05:56 -0600)
Matching the ublk driver, change the type of io_cmd_buf from char * to
struct ublksrv_io_desc *.

Signed-off-by: Caleb Sander Mateos <csander@purestorage.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Acked-by: Shuah Khan <skhan@linuxfoundation.org>
Link: https://lore.kernel.org/r/20250328194230.2726862-3-csander@purestorage.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
tools/testing/selftests/ublk/kublk.c
tools/testing/selftests/ublk/kublk.h

index 05147b53c3613a436e3a13848e146e0c66ca2525..83756f97c26eecc984da55b8717e99b89470b904 100644 (file)
@@ -322,7 +322,7 @@ static int ublk_queue_init(struct ublk_queue *q)
 
        cmd_buf_size = ublk_queue_cmd_buf_sz(q);
        off = UBLKSRV_CMD_BUF_OFFSET + q->q_id * ublk_queue_max_cmd_buf_sz();
-       q->io_cmd_buf = (char *)mmap(0, cmd_buf_size, PROT_READ,
+       q->io_cmd_buf = mmap(0, cmd_buf_size, PROT_READ,
                        MAP_SHARED | MAP_POPULATE, dev->fds[0], off);
        if (q->io_cmd_buf == MAP_FAILED) {
                ublk_err("ublk dev %d queue %d map io_cmd_buf failed %m\n",
index f31a5c4d4143e28f13d4cd98d611e37f93b0c25a..760ff8ffb8107037a19a8fb7ab408818845e010d 100644 (file)
@@ -128,7 +128,7 @@ struct ublk_queue {
        unsigned int io_inflight;
        struct ublk_dev *dev;
        const struct ublk_tgt_ops *tgt_ops;
-       char *io_cmd_buf;
+       struct ublksrv_io_desc *io_cmd_buf;
        struct io_uring ring;
        struct ublk_io ios[UBLK_QUEUE_DEPTH];
 #define UBLKSRV_QUEUE_STOPPING (1U << 0)
@@ -302,7 +302,7 @@ static inline void ublk_mark_io_done(struct ublk_io *io, int res)
 
 static inline const struct ublksrv_io_desc *ublk_get_iod(const struct ublk_queue *q, int tag)
 {
-       return (struct ublksrv_io_desc *)&(q->io_cmd_buf[tag * sizeof(struct ublksrv_io_desc)]);
+       return &q->io_cmd_buf[tag];
 }
 
 static inline void ublk_set_sqe_cmd_op(struct io_uring_sqe *sqe, __u32 cmd_op)