lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-Id: <1464074252-21991-5-git-send-email-treeze.taeung@gmail.com> Date: Tue, 24 May 2016 16:17:31 +0900 From: Taeung Song <treeze.taeung@...il.com> To: Arnaldo Carvalho de Melo <acme@...nel.org> Cc: linux-kernel@...r.kernel.org, Jiri Olsa <jolsa@...nel.org>, Namhyung Kim <namhyung@...nel.org>, Ingo Molnar <mingo@...nel.org>, Peter Zijlstra <peterz@...radead.org>, Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Masami Hiramatsu <mhiramat@...nel.org>, Taeung Song <treeze.taeung@...il.com>, Jiri Olsa <jolsa@...hat.com> Subject: [PATCH v2 4/5] perf config: Reimplement show_config() using perf_config() Old show_config() directly use config set so there are many duplicated code with perf_config_set__iter(). So reimplement show_config() using perf_config() that use perf_config_set__iter() with config set that already contains all configs. Cc: Namhyung Kim <namhyung@...nel.org> Cc: Jiri Olsa <jolsa@...hat.com> Cc: Masami Hiramatsu <mhiramat@...nel.org> Cc: Alexander Shishkin <alexander.shishkin@...ux.intel.com> Signed-off-by: Taeung Song <treeze.taeung@...il.com> --- tools/perf/builtin-config.c | 29 +++++++---------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/tools/perf/builtin-config.c b/tools/perf/builtin-config.c index 8eef3fb..4a61411 100644 --- a/tools/perf/builtin-config.c +++ b/tools/perf/builtin-config.c @@ -33,28 +33,13 @@ static struct option config_options[] = { OPT_END() }; -static int show_config(struct perf_config_set *set) +static int show_config(const char *key, const char *value, + void *cb __maybe_unused) { - struct perf_config_section *section; - struct perf_config_item *item; - struct list_head *sections; - - if (set == NULL) - return -1; - - sections = &set->sections; - if (list_empty(sections)) - return -1; - - list_for_each_entry(section, sections, node) { - list_for_each_entry(item, §ion->items, node) { - char *value = item->value; - - if (value) - printf("%s.%s=%s\n", section->name, - item->name, value); - } - } + if (value) + printf("%s=%s\n", key, value); + else + printf("%s\n", key); return 0; } @@ -92,7 +77,7 @@ int cmd_config(int argc, const char **argv, const char *prefix __maybe_unused) pr_err("Error: takes no arguments\n"); parse_options_usage(config_usage, config_options, "l", 1); } else { - ret = show_config(set); + ret = perf_config(show_config, NULL); if (ret < 0) { const char * config_filename = config_exclusive_filename; if (!config_exclusive_filename) -- 2.5.0
Powered by blists - more mailing lists