On Thu, Oct 20, 2022 at 12:56:03PM +0200, Christoph Hellwig wrote: > All I/O submissions have fairly similar latencies, and a tagset-wide > quiesce is a fairly common operation. Becuase there are a lot less > tagsets there is also no need for the variable size allocation trick. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > block/blk-core.c | 27 +++++---------------------- > block/blk-mq.c | 25 +++++++++++++++++-------- > block/blk-mq.h | 14 +++++++------- > block/blk-sysfs.c | 9 ++------- > block/blk.h | 9 +-------- > block/genhd.c | 2 +- > include/linux/blk-mq.h | 4 ++++ > include/linux/blkdev.h | 9 --------- > 8 files changed, 37 insertions(+), 62 deletions(-) q->tag_set is supposed to be live when calling blk_mq_quiesce_queue and blk_mq_unquiesce_queue, especially del_gendisk() quieses request queue, so looks fine: Reviewed-by: Ming Lei <ming.lei@xxxxxxxxxx> Thanks, Ming