[PATCH 13/17] nvme: track subsystems
Keith Busch
keith.busch at intel.com
Wed Oct 18 15:53:56 PDT 2017
With the series, 'modprobe -r nvme && modprobe nvme' is failing. I can
get that to pass with the following:
---
@@ -1904,7 +1907,11 @@ static void nvme_free_subsystem(struct device *dev)
static void nvme_put_subsystem(struct nvme_subsystem *subsys)
{
put_device(&subsys->dev);
+
+ if (list_empty(&subsys->ctrls))
+ device_del(&subsys->dev);
}
static struct nvme_subsystem *__nvme_find_get_subsystem(const char *subsysnqn)
--
But this is racy with nvme_init_subsystem, and it creates warnings:
kernfs: can not remove 'uevent', no directory
kernfs: can not remove 'online', no directory
More information about the Linux-nvme
mailing list