ublk: fix UBLK_CMD_DEL_DEV_ASYNC handling
authorMing Lei <ming.lei@redhat.com>
Wed, 24 Jul 2024 14:33:11 +0000 (22:33 +0800)
committerJens Axboe <axboe@kernel.dk>
Wed, 24 Jul 2024 15:51:46 +0000 (09:51 -0600)
In ublk_ctrl_uring_cmd(), ioctl command NR should be used for
matching _IOC_NR(cmd_op).

Fix it by adding one private macro, and this way is clean.

Fixes: 13fe8e6825e4 ("ublk: add UBLK_CMD_DEL_DEV_ASYNC")
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20240724143311.2646330-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/ublk_drv.c

index 6fb799ec0d88c1677721ca22caeb2d7910a557c5..890c08792ba8bc97a6d2c04546cba1585ce6bbde 100644 (file)
@@ -48,6 +48,9 @@
 
 #define UBLK_MINORS            (1U << MINORBITS)
 
+/* private ioctl command mirror */
+#define UBLK_CMD_DEL_DEV_ASYNC _IOC_NR(UBLK_U_CMD_DEL_DEV_ASYNC)
+
 /* All UBLK_F_* have to be included into UBLK_F_ALL */
 #define UBLK_F_ALL (UBLK_F_SUPPORT_ZERO_COPY \
                | UBLK_F_URING_CMD_COMP_IN_TASK \
@@ -2903,7 +2906,7 @@ static int ublk_ctrl_uring_cmd(struct io_uring_cmd *cmd,
        case UBLK_CMD_DEL_DEV:
                ret = ublk_ctrl_del_dev(&ub, true);
                break;
-       case UBLK_U_CMD_DEL_DEV_ASYNC:
+       case UBLK_CMD_DEL_DEV_ASYNC:
                ret = ublk_ctrl_del_dev(&ub, false);
                break;
        case UBLK_CMD_GET_QUEUE_AFFINITY: