From: Hannes Reinecke Date: Fri, 7 May 2021 08:12:41 +0000 (+0200) Subject: tree: move config_file argument into nvme_root X-Git-Tag: v1.0-rc0~129^2 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=809245170c65e3d39c03182b02806d5d0e30a100;p=users%2Fsagi%2Flibnvme.git tree: move config_file argument into nvme_root Store the config file in the nvme_root structure; that allows us to call nvme_update_config() without having to specify the configuration file. Signed-off-by: Hannes Reinecke --- diff --git a/src/nvme/tree.c b/src/nvme/tree.c index 38333e97..04c70742 100644 --- a/src/nvme/tree.c +++ b/src/nvme/tree.c @@ -131,6 +131,7 @@ struct nvme_host { }; struct nvme_root { + char *config_file; struct list_head hosts; bool modified; }; @@ -198,16 +199,18 @@ nvme_root_t nvme_scan(const char *config_file) { nvme_root_t r = nvme_scan_filter(NULL); - if (r && config_file) + if (r && config_file) { json_read_config(r, config_file); + r->config_file = strdup(config_file); + } return r; } -int nvme_update_config(nvme_root_t r, const char *config_file) +int nvme_update_config(nvme_root_t r) { - if (!r->modified) + if (!r->modified || !r->config_file) return 0; - return json_update_config(r, config_file); + return json_update_config(r, r->config_file); } nvme_host_t nvme_first_host(nvme_root_t r) @@ -269,6 +272,8 @@ void nvme_free_tree(nvme_root_t r) nvme_for_each_host_safe(r, h, _h) nvme_free_host(h); + if (r->config_file) + free(r->config_file); free(r); } diff --git a/src/nvme/tree.h b/src/nvme/tree.h index 8823254a..53f53e3f 100644 --- a/src/nvme/tree.h +++ b/src/nvme/tree.h @@ -977,11 +977,10 @@ void nvme_reset_topology(nvme_root_t r); /** * nvme_update_config() - * @r: - * @config_file: * * Return: */ -int nvme_update_config(nvme_root_t r, const char *config_file); +int nvme_update_config(nvme_root_t r); /** * nvme_free_tree() -