Thread (17 messages) 17 messages, 4 authors, 2017-05-22

Re: [PATCH v2 1/3] nvme: use blk_mq_start_hw_queues() in nvme_kill_queues()

From: Ming Lei <hidden>
Date: 2017-05-22 01:35:58
Also in: linux-nvme, stable

On Sun, May 21, 2017 at 08:20:02AM +0200, Christoph Hellwig wrote:
quoted
index d5e0906262ea..ce0d96913ee6 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -2437,7 +2437,13 @@ void nvme_kill_queues(struct nvme_ctrl *ctrl)
 		revalidate_disk(ns->disk);
 		blk_set_queue_dying(ns->queue);
 		blk_mq_abort_requeue_list(ns->queue);
-		blk_mq_start_stopped_hw_queues(ns->queue, true);
+
+		/*
+		 * We have to force to start queues for avoiding hang
+		 * forever, and we have to make sure that queues won't
+		 * be stopped forever from now on.
+		 */
		/*
		 * Forcibly start all queues to avoid having stuck requests.
The above is better.
		 * Note: We must make sure to not stop the queues from
		 * now until the final removal.
In theory, it should be OK to stop and start queues again before the final
removal, so how about the following:

 		 * Note: We must make sure to not put the queues into being stopped
		 forever from now until the final removal.

Thanks,
Ming
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help