Message ID | 1469822242-3477-5-git-send-email-sagi@grimberg.me (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
> - nvme_remove_namespaces(&ctrl->ctrl); > - nvme_rdma_shutdown_ctrl(ctrl); > nvme_uninit_ctrl(&ctrl->ctrl); > + nvme_rdma_shutdown_ctrl(ctrl); How safe is the reordering here? The description should explain why it's fine. -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
>> - nvme_remove_namespaces(&ctrl->ctrl); >> - nvme_rdma_shutdown_ctrl(ctrl); >> nvme_uninit_ctrl(&ctrl->ctrl); >> + nvme_rdma_shutdown_ctrl(ctrl); > > How safe is the reordering here? The description should explain why > it's fine. The reordering is safe because we do want everything in uninit_ctrl (flush aen,scan and ns-remove) to happen before we shutdown the rdma stuff. I'll add to the change log. Thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c index 641ab7f91899..bd9b416fe21a 100644 --- a/drivers/nvme/host/rdma.c +++ b/drivers/nvme/host/rdma.c @@ -1658,9 +1658,8 @@ static void nvme_rdma_del_ctrl_work(struct work_struct *work) struct nvme_rdma_ctrl *ctrl = container_of(work, struct nvme_rdma_ctrl, delete_work); - nvme_remove_namespaces(&ctrl->ctrl); - nvme_rdma_shutdown_ctrl(ctrl); nvme_uninit_ctrl(&ctrl->ctrl); + nvme_rdma_shutdown_ctrl(ctrl); if (ctrl->ctrl.tagset) { blk_cleanup_queue(ctrl->ctrl.connect_q); blk_mq_free_tag_set(&ctrl->tag_set); @@ -1699,7 +1698,6 @@ static void nvme_rdma_remove_ctrl_work(struct work_struct *work) struct nvme_rdma_ctrl *ctrl = container_of(work, struct nvme_rdma_ctrl, delete_work); - nvme_remove_namespaces(&ctrl->ctrl); nvme_uninit_ctrl(&ctrl->ctrl); if (ctrl->ctrl.tagset) { blk_cleanup_queue(ctrl->ctrl.connect_q);
nvme_uninit_ctrl already does that for us. Signed-off-by: Sagi Grimberg <sagi@grimberg.me> --- drivers/nvme/host/rdma.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)