[PATCH v4] NVMe: basic conversion to blk-mq

Keith Busch keith.busch at intel.com
Fri May 30 09:48:27 PDT 2014


On Thu, 29 May 2014, Matias Bjørling wrote:
> This converts the current NVMe driver to utilize the blk-mq layer.

I'm pretty darn sure this new nvme_remove can cause a process
with an open reference to use queues after they're freed in the
nvme_submit_sync_command path, maybe even the admin tags too.

> @@ -2802,7 +2574,7 @@ static void nvme_remove(struct pci_dev *pdev)
> 	nvme_dev_remove(dev);
> 	nvme_dev_shutdown(dev);
> 	nvme_free_queues(dev, 0);
> -	rcu_barrier();
> +	nvme_free_admin_tags(dev);
> 	nvme_release_instance(dev);
> 	nvme_release_prp_pools(dev);
> 	kref_put(&dev->kref, nvme_free_dev);


More information about the Linux-nvme mailing list