Messages in this thread | | | Subject | Re: [PATCH v2 5/5] nvme-fc: Freeze queues before destroying them | From | Hannes Reinecke <> | Date | Thu, 8 Jul 2021 12:14:11 +0200 |
| |
On 7/8/21 11:27 AM, Daniel Wagner wrote: > nvme_wait_freeze_timeout() in nvme_fc_recreate_io_queues() needs to be > paired with a nvme_start_freeze(). Without freezing first we will always > timeout in nvme_wait_freeze_timeout(). > > Note there is a similiar fix for RDMA 9f98772ba307 ("nvme-rdma: fix > controller reset hang during traffic") which happens to follow the PCI > strategy how to handle resetting the queues. > > Signed-off-by: Daniel Wagner <dwagner@suse.de> > --- > drivers/nvme/host/fc.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/nvme/host/fc.c b/drivers/nvme/host/fc.c > index 8e1fc3796735..a38b01485939 100644 > --- a/drivers/nvme/host/fc.c > +++ b/drivers/nvme/host/fc.c > @@ -3249,6 +3249,7 @@ nvme_fc_delete_association(struct nvme_fc_ctrl *ctrl) > nvme_fc_xmt_ls_rsp(disls); > > if (ctrl->ctrl.tagset) { > + nvme_start_freeze(&ctrl->ctrl); > nvme_fc_delete_hw_io_queues(ctrl); > nvme_fc_free_io_queues(ctrl); > } > Please add a comment here about the pairing. We've missed it once, so we should make it clear why it has to be placed here.
Cheers,
Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@suse.de +49 911 74053 688 SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer
| |