Messages in this thread Patch in this message | | | From | Taeung Song <> | Subject | [PATCH v5 8/9] perf config: Reset the config set at only 'config' sub-command | Date | Wed, 1 Jun 2016 02:26:48 +0900 |
| |
When first calling perf_config(), the config set is initialized collecting both user and system config files (i.e. user config ~/.perfconfig and system config $(sysconfdir)/perfconfig) so config set contains not only user config but also system config key-value pairs. (User config has higher priority than system config.)
But 'config' sub-command individually use the config set so free the existing config set (i.e. a global variable config_set) before reinstantiating it.
And 'config' sub-command have '--user' or '--system' options. To reinitialize with the options, the config set should be reset at the very beginning at cmd_config()
Cc: Namhyung Kim <namhyung@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Signed-off-by: Taeung Song <treeze.taeung@gmail.com> --- tools/perf/builtin-config.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/tools/perf/builtin-config.c b/tools/perf/builtin-config.c index f23fe52..4dab41e 100644 --- a/tools/perf/builtin-config.c +++ b/tools/perf/builtin-config.c @@ -79,6 +79,11 @@ int cmd_config(int argc, const char **argv, const char *prefix __maybe_unused) else if (use_user_config) config_exclusive_filename = user_config; + /* + * Reset the config set at only 'config' sub-command + * because of reinitializing with options config file location. + */ + perf_config_set__delete(&config_set); config_set = perf_config_set__new(); if (!config_set) { ret = -1; -- 2.5.0
| |