diff options
| -rw-r--r-- | drivers/nvme/host/pci.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c index e5c2bea01dbf..09cc4dafa32a 100644 --- a/drivers/nvme/host/pci.c +++ b/drivers/nvme/host/pci.c | |||
| @@ -2116,16 +2116,12 @@ static void nvme_remove(struct pci_dev *pdev) | |||
| 2116 | { | 2116 | { |
| 2117 | struct nvme_dev *dev = pci_get_drvdata(pdev); | 2117 | struct nvme_dev *dev = pci_get_drvdata(pdev); |
| 2118 | 2118 | ||
| 2119 | spin_lock(&dev_list_lock); | ||
| 2120 | list_del_init(&dev->node); | ||
| 2121 | spin_unlock(&dev_list_lock); | ||
| 2122 | |||
| 2123 | pci_set_drvdata(pdev, NULL); | 2119 | pci_set_drvdata(pdev, NULL); |
| 2124 | flush_work(&dev->reset_work); | ||
| 2125 | flush_work(&dev->scan_work); | 2120 | flush_work(&dev->scan_work); |
| 2126 | nvme_remove_namespaces(&dev->ctrl); | 2121 | nvme_remove_namespaces(&dev->ctrl); |
| 2127 | nvme_uninit_ctrl(&dev->ctrl); | 2122 | nvme_uninit_ctrl(&dev->ctrl); |
| 2128 | nvme_dev_disable(dev, true); | 2123 | nvme_dev_disable(dev, true); |
| 2124 | flush_work(&dev->reset_work); | ||
| 2129 | nvme_dev_remove_admin(dev); | 2125 | nvme_dev_remove_admin(dev); |
| 2130 | nvme_free_queues(dev, 0); | 2126 | nvme_free_queues(dev, 0); |
| 2131 | nvme_release_cmb(dev); | 2127 | nvme_release_cmb(dev); |
