nvme: fix controller instance leak
[linux-2.6-microblaze.git] / drivers / nvme / host / core.c
index e406c3c..d618620 100644 (file)
@@ -4394,7 +4394,7 @@ static void nvme_free_ctrl(struct device *dev)
        struct nvme_subsystem *subsys = ctrl->subsys;
        struct nvme_cel *cel, *next;
 
-       if (subsys && ctrl->instance != subsys->instance)
+       if (!subsys || ctrl->instance != subsys->instance)
                ida_simple_remove(&nvme_instance_ida, ctrl->instance);
 
        list_for_each_entry_safe(cel, next, &ctrl->cels, entry) {