]> www.infradead.org Git - users/sagi/libnvme.git/commitdiff
tree: do not free 'path' in nvme_init_ctrl()
authorHannes Reinecke <hare@suse.de>
Sat, 26 Jun 2021 11:46:22 +0000 (13:46 +0200)
committerHannes Reinecke <hare@suse.de>
Sat, 26 Jun 2021 11:46:22 +0000 (13:46 +0200)
After nvme_configure_ctrl() completes successfully we must not
free the 'path' argument as control has been transferred to the
controller structure.

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

index bb87587cb3fed44b74884b0875bbbdada73f059e..de3bb585ae5a11bafe03a343e1b316faa2cddc83 100644 (file)
@@ -245,7 +245,8 @@ static void __nvme_free_subsystem(struct nvme_subsystem *s)
        nvme_subsystem_for_each_ns_safe(s, n, _n)
                __nvme_free_ns(n);
 
-       free(s->name);
+       if (s->name)
+               free(s->name);
        free(s->sysfs_dir);
        free(s->subsysnqn);
        if (s->model)
@@ -1056,7 +1057,6 @@ int nvme_init_ctrl(nvme_host_t h, nvme_ctrl_t c, int instance)
                ret = -1;
                goto out_free_name;
        }
-       free(path);
        subsys_name = nvme_ctrl_lookup_subsystem_name(c);
        if (!subsys_name) {
                nvme_msg(LOG_ERR, "Failed to lookup subsystem name for %s\n",