|
@@ -321,6 +321,15 @@ static void nvme_mpath_set_live(struct nvme_ns *ns)
|
|
device_add_disk(&head->subsys->dev, head->disk,
|
|
device_add_disk(&head->subsys->dev, head->disk,
|
|
nvme_ns_id_attr_groups);
|
|
nvme_ns_id_attr_groups);
|
|
|
|
|
|
|
|
+ if (nvme_path_is_optimized(ns)) {
|
|
|
|
+ int node, srcu_idx;
|
|
|
|
+
|
|
|
|
+ srcu_idx = srcu_read_lock(&head->srcu);
|
|
|
|
+ for_each_node(node)
|
|
|
|
+ __nvme_find_path(head, node);
|
|
|
|
+ srcu_read_unlock(&head->srcu, srcu_idx);
|
|
|
|
+ }
|
|
|
|
+
|
|
kblockd_schedule_work(&ns->head->requeue_work);
|
|
kblockd_schedule_work(&ns->head->requeue_work);
|
|
}
|
|
}
|
|
|
|
|