ublk_drv: avoid to touch io_uring cmd in blk_mq io path
authorMing Lei <ming.lei@redhat.com>
Sat, 29 Oct 2022 01:04:31 +0000 (09:04 +0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 31 Oct 2022 13:23:24 +0000 (07:23 -0600)
commit3ab6e94ca539242247d4f00414a1bde584d001ed
tree7a365c3088761e6c86dba70d25c547d2dfb6aecf
parentd57c2c6c1145148bb23d68db73de0b52d482d4ba
ublk_drv: avoid to touch io_uring cmd in blk_mq io path

io_uring cmd is supposed to be used in ubq daemon context mainly,
and we should try to avoid to touch it in ublk io submission context,
otherwise this data could become shared between the two contexts,
and performance is hurt.

So link request into one per-queue list, and use same batching policy
of io_uring command, just avoid to touch ucmd in blk-mq io context.

Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: ZiyangZhang <ZiyangZhang@linux.alibaba.com>
Link: https://lore.kernel.org/r/20221029010432.598367-4-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/ublk_drv.c