Hi, The 1st patch add comments on blk-mq races with timeout handler. The other 3 patches improves handling for dying queue: - the 2nd one adds one barrier in blk_queue_enter() for avoiding hanging caused by out-of-order - the 3rd and 4th patches block new I/O entering queue after queue is set as dying V3: - tweak comments as suggested by Bart Van Assche V2: - add one missing barrier in blk_queue_enter() V1: - add comments on races related with timeout handler - add Tested-by & Reviewed-by tag thanks, Ming Ming Lei (4): blk-mq: comment on races related with timeout handler block: add a read barrier in blk_queue_enter() block: rename blk_mq_freeze_queue_start() block: block new I/O just after queue is set as dying block/blk-core.c | 16 ++++++++++++++++ block/blk-mq.c | 32 +++++++++++++++++++++++++++----- drivers/block/mtip32xx/mtip32xx.c | 2 +- drivers/nvme/host/core.c | 2 +- include/linux/blk-mq.h | 2 +- 5 files changed, 46 insertions(+), 8 deletions(-) -- 2.9.3