ublk: call ublk_dispatch_req() for handling UBLK_U_IO_NEED_GET_DATA
authorMing Lei <ming.lei@redhat.com>
Fri, 25 Apr 2025 01:37:39 +0000 (09:37 +0800)
committerJens Axboe <axboe@kernel.dk>
Fri, 25 Apr 2025 01:52:20 +0000 (19:52 -0600)
commitd6aa0c178bf81f30ae4a780b2bca653daa2eb633
treeaca65bfd926e7ddc6ca8d89344f54ac98bdc1c1b
parentc4d2519c6ad854dc2114e77d693b3cf1baf55330
ublk: call ublk_dispatch_req() for handling UBLK_U_IO_NEED_GET_DATA

We call io_uring_cmd_complete_in_task() to schedule task_work for handling
UBLK_U_IO_NEED_GET_DATA.

This way is really not necessary because the current context is exactly
the ublk queue context, so call ublk_dispatch_req() directly for handling
UBLK_U_IO_NEED_GET_DATA.

Fixes: 216c8f5ef0f2 ("ublk: replace monitor with cancelable uring_cmd")
Tested-by: Jared Holzman <jholzman@nvidia.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20250425013742.1079549-2-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/ublk_drv.c