]> www.infradead.org Git - users/sagi/libnvme.git/commitdiff
tree: add nvme_rescan_ctrl()
authorHannes Reinecke <hare@suse.de>
Fri, 7 May 2021 14:54:19 +0000 (16:54 +0200)
committerHannes Reinecke <hare@suse.de>
Sat, 19 Jun 2021 11:36:42 +0000 (13:36 +0200)
Add a function to rescan a controller eg after receiving an AEN.

Signed-off-by: Hannes Reinecke <hare@suse.de>
src/nvme/tree.c
src/nvme/tree.h

index a75e914ca7fca5f9f8f43ba27f6b8795cd8f2491..49b2b18ab2fb60d37191daf389fb2b1e120f3d38 100644 (file)
@@ -1185,6 +1185,15 @@ static int nvme_subsystem_scan_ctrl(struct nvme_subsystem *s, char *name)
        return 0;
 }
 
+void nvme_rescan_ctrl(struct nvme_ctrl *c)
+{
+       if (!c->s)
+               return;
+       nvme_subsystem_scan_namespaces(c->s);
+       nvme_ctrl_scan_namespaces(c);
+       nvme_ctrl_scan_paths(c);
+}
+
 static int nvme_bytes_to_lba(nvme_ns_t n, off_t offset, size_t count,
                            __u64 *lba, __u16 *nlb)
 {
index 7228a10ea1686fee2ffcf700fc847ffd3d175ad9..719dbbfbc0c95f8b444215f0d1a344d50b730473 100644 (file)
@@ -865,6 +865,12 @@ int nvme_ctrl_disconnect(nvme_ctrl_t c);
  */
 nvme_ctrl_t nvme_scan_ctrl(nvme_root_t r, const char *name);
 
+/**
+ * @c:
+ *
+ */
+void nvme_rescan_ctrl(nvme_ctrl_t c);
+
 /**
  * nvme_init_ctrl() -
  * @h: