[PATCH v2 0/3] reduce quiesce time for lots of name spaces
Chao Leng
lengchao at huawei.com
Fri Aug 7 05:05:59 EDT 2020
nvme_stop_queues quiesce queues for all name spaces, now quiesce one by
one, if there is lots of name spaces, sync wait long time(more than 10s).
Multipath can not fail over to retry quickly, cause io pause long time.
This is not expected.
To reduce quiesce time, we introduce async mechanism for sync SRCUs
and quiesce queue.
Changes from v1:
- add support for blocking queue.
- introduce async mechanism for sync SRCU
- introduce async mechanism for quiesce queue
Chao Leng (3):
rcu: introduce async mechanism for sync SRCU
blk-mq: introduce async mechanism for quiesce queue
nvme-core: reduce io pause time when fail over
block/blk-mq.c | 28 ++++++++++++++++++++++++++++
drivers/nvme/host/core.c | 7 ++++++-
include/linux/blk-mq.h | 2 ++
include/linux/rcupdate_wait.h | 6 ++++++
include/linux/srcu.h | 1 +
include/linux/srcutiny.h | 2 ++
include/linux/srcutree.h | 2 ++
kernel/rcu/srcutiny.c | 15 +++++++++++++++
kernel/rcu/srcutree.c | 26 ++++++++++++++++++++++++++
kernel/rcu/update.c | 11 +++++++++++
10 files changed, 99 insertions(+), 1 deletion(-)
--
2.16.4
More information about the Linux-nvme
mailing list