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

2017-05-22 Thread Ming Lei
On Mon, May 22, 2017 at 02:51:40PM +0200, Christoph Hellwig wrote: > On Mon, May 22, 2017 at 09:35:58AM +0800, Ming Lei wrote: > > 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 n

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

2017-05-22 Thread Christoph Hellwig
On Mon, May 22, 2017 at 09:35:58AM +0800, Ming Lei wrote: > 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 u

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

2017-05-22 Thread Johannes Thumshirn
On 05/20/2017 05:56 AM, Ming Lei wrote: > Inside nvme_kill_queues(), we have to start hw queues for > draining requests in sw queues, .dispatch list and requeue list, > so use blk_mq_start_hw_queues() instead of blk_mq_start_stopped_hw_queues() > which only run queues if queues are stopped, but the

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

2017-05-21 Thread Keith Busch
Looks good. Reviewed-by: Keith Busch

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

2017-05-21 Thread Ming Lei
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); >

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

2017-05-20 Thread Christoph Hellwig
> 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_

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

2017-05-19 Thread Ming Lei
Inside nvme_kill_queues(), we have to start hw queues for draining requests in sw queues, .dispatch list and requeue list, so use blk_mq_start_hw_queues() instead of blk_mq_start_stopped_hw_queues() which only run queues if queues are stopped, but the queues may have been started already, for examp