aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/nvme/host/pci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/nvme/host/pci.c')
-rw-r--r--drivers/nvme/host/pci.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
index 022ea1ee63f8..7fee665ec45e 100644
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@ -2560,15 +2560,15 @@ static void nvme_reset_work(struct work_struct *work)
2560 mutex_lock(&dev->shutdown_lock); 2560 mutex_lock(&dev->shutdown_lock);
2561 result = nvme_pci_enable(dev); 2561 result = nvme_pci_enable(dev);
2562 if (result) 2562 if (result)
2563 goto out; 2563 goto out_unlock;
2564 2564
2565 result = nvme_pci_configure_admin_queue(dev); 2565 result = nvme_pci_configure_admin_queue(dev);
2566 if (result) 2566 if (result)
2567 goto out; 2567 goto out_unlock;
2568 2568
2569 result = nvme_alloc_admin_tags(dev); 2569 result = nvme_alloc_admin_tags(dev);
2570 if (result) 2570 if (result)
2571 goto out; 2571 goto out_unlock;
2572 2572
2573 /* 2573 /*
2574 * Limit the max command size to prevent iod->sg allocations going 2574 * Limit the max command size to prevent iod->sg allocations going
@@ -2651,6 +2651,8 @@ static void nvme_reset_work(struct work_struct *work)
2651 nvme_start_ctrl(&dev->ctrl); 2651 nvme_start_ctrl(&dev->ctrl);
2652 return; 2652 return;
2653 2653
2654 out_unlock:
2655 mutex_unlock(&dev->shutdown_lock);
2654 out: 2656 out:
2655 nvme_remove_dead_ctrl(dev, result); 2657 nvme_remove_dead_ctrl(dev, result);
2656} 2658}