This set improves the quiesce time when using a large set of namespaces, which also improves I/O failover time in a multipath environment. We improve for both non-blocking hctxs and blocking hctxs introducing blk_mq_[un]quiesce_tagset which works on all request queues over a given tagset in parallel (which is the case in nvme) for both tagset types (blocking and non-blocking); Changes from v1: - improvement is based on tagset rather than namesapces Chao Leng (2): blk-mq: add tagset quiesce interface nvme: use blk_mq_[un]quiesce_tagset block/blk-mq.c | 75 ++++++++++++++++++++++++++++++++++++++++++++++++ drivers/nvme/host/core.c | 42 +++++++++------------------ drivers/nvme/host/nvme.h | 2 +- include/linux/blk-mq.h | 2 ++ include/linux/blkdev.h | 2 ++ 5 files changed, 93 insertions(+), 30 deletions(-) -- 2.16.4