On Tue, May 30, 2017 at 07:23:31PM +0000, Bart Van Assche wrote: > On Sun, 2017-05-28 at 18:44 +0800, Ming Lei wrote: > > First it is really a fix, and then a improvement, so could you tell me > > where is wrong with the title and the description? > > Hello Ming, > > Can you explain me why you want to keep the blk_mq_stop_hw_queues() call in > nvme_suspend_queue()? Since immediately after that call the NVMe driver starts > freeing resources, shouldn't that call be changed into a call of > blk_mq_quiesce_queue()? I think the same comment also applies to the > blk_mq_stop_hw_queues() calls in nvme_rdma_error_recovery_work() and > nvme_rdma_shutdown_ctrl(). Not only NVMe, also other suspend cases in virito-blk, dm, and ... But that doesn't belong to this patchset, and definitely a follow up. The big purpose of this patchset is to make blk_mq_quiesce_queue() easy to use, correct and avoiding potential races. Then we can fix cases of canceling requests, and other cases like you mentioned. Thanks, Ming