On Sun, May 21, 2017 at 08:20:02AM +0200, Christoph Hellwig wrote: > > 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