Messages in this thread | | | Date | Mon, 9 Aug 2021 10:58:07 +0200 | From | Daniel Wagner <> | Subject | Re: [PATCH v4 8/8] nvme-rdma: Unfreeze queues on reconnect |
| |
Hi Sagi,
On Fri, Aug 06, 2021 at 12:59:15PM -0700, Sagi Grimberg wrote: > > > During the queue teardown in nvme_rdma_teardown_io_queues() freeze is > > called unconditionally. When we reconnect we need to pair the freeze > > with an unfreeze to avoid hanging I/Os. For newly created connection > > this is not needed. > > > > Fixes: 9f98772ba307 ("nvme-rdma: fix controller reset hang during traffic") > > Signed-off-by: Daniel Wagner <dwagner@suse.de> > > --- > > drivers/nvme/host/rdma.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c > > index de2a8950d282..21a8a5353af0 100644 > > --- a/drivers/nvme/host/rdma.c > > +++ b/drivers/nvme/host/rdma.c > > @@ -901,6 +901,8 @@ static int nvme_rdma_configure_admin_queue(struct nvme_rdma_ctrl *ctrl, > > error = PTR_ERR(ctrl->ctrl.admin_q); > > goto out_cleanup_fabrics_q; > > } > > + } else { > > + nvme_unfreeze(&ctrl->ctrl); > > That seems misplaced.. unfreezing the I/O queues when setting up the admin > queue?
Indeed. After looking again on it, this should be almost identically to the tcp.c fix in nvme_rdma_configure_io_queues.
BTW, I am working on getting a RDMA test setup running. Hopefully I have all the right licenses on the array.
Daniel
| |