]> www.infradead.org Git - users/sagi/libnvme.git/commitdiff
tree: do not open blk device on default
authorDaniel Wagner <dwagner@suse.de>
Thu, 7 Dec 2023 12:52:59 +0000 (13:52 +0100)
committerDaniel Wagner <wagi@monom.org>
Tue, 19 Dec 2023 09:06:37 +0000 (10:06 +0100)
The fd is not needed anymore if the kernel exposes all necessary sysfs
entries to fully scan the nvme subsystem. Thus do not alwyas open the
blk device and do it only when necessary.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
src/nvme/tree.c

index db6efb74aa168b65d59f05416f9239b2e5da18d9..5d1d3bb22244d58ede7ad801527834c5b56b29af 100644 (file)
@@ -2501,7 +2501,6 @@ static void nvme_ns_set_generic_name(struct nvme_ns *n, const char *name)
 static nvme_ns_t nvme_ns_open(const char *sys_path, const char *name)
 {
        struct nvme_ns *n;
-       int fd;
 
        n = calloc(1, sizeof(*n));
        if (!n) {
@@ -2512,10 +2511,6 @@ static nvme_ns_t nvme_ns_open(const char *sys_path, const char *name)
        n->fd = -1;
        n->name = strdup(name);
 
-       fd = nvme_ns_get_fd(n);
-       if (fd < 0)
-               goto free_ns;
-
        nvme_ns_set_generic_name(n, name);
 
        if (nvme_ns_init(sys_path, n) != 0)
@@ -2528,7 +2523,6 @@ static nvme_ns_t nvme_ns_open(const char *sys_path, const char *name)
        return n;
 
 free_ns:
-       nvme_ns_release_fd(n);
        free(n->generic_name);
        free(n->name);
        free(n);