]> git.ipfire.org Git - thirdparty/linux.git/commit
selftests: ublk: kublk: lift queue initialization out of thread
authorUday Shankar <ushankar@purestorage.com>
Thu, 29 May 2025 23:47:13 +0000 (17:47 -0600)
committerJens Axboe <axboe@kernel.dk>
Sat, 31 May 2025 20:38:35 +0000 (14:38 -0600)
commit8f75ba28b8747d6a788daede0060d574b5693dac
tree9d21e1b27bd4c46f152489427f94dff15a72140a
parent97737097528397a8106ffc552e827a3dedccf132
selftests: ublk: kublk: lift queue initialization out of thread

Currently, each ublk server I/O handler thread initializes its own
queue. However, as we move towards decoupled ublk_queues and ublk server
threads, this model does not make sense anymore, as there will no longer
be a concept of a thread having "its own" queue. So lift queue
initialization out of the per-thread ublk_io_handler_fn and into a loop
in ublk_start_daemon (which runs once for each device).

There is a part of ublk_queue_init (ring initialization) which does
actually need to happen on the thread that will use the ring; that is
separated into a separate ublk_thread_init which is still called by each
I/O handler thread.

Signed-off-by: Uday Shankar <ushankar@purestorage.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20250529-ublk_task_per_io-v8-4-e9d3b119336a@purestorage.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
tools/testing/selftests/ublk/kublk.c