Re: [PATCH] Add input file_name support for perf sched {map|latency|replay|timehist}

From: David Ahern
Date: Mon Sep 09 2019 - 04:50:25 EST


On 9/9/19 4:49 AM, çèé wrote:
>> diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c
>> index 025151dcb651..8e51fbb88549 100644
>> --- a/tools/perf/builtin-sched.c
>> +++ b/tools/perf/builtin-sched.c
>> @@ -3374,6 +3374,7 @@ int cmd_sched(int argc, const char **argv)
>> const struct option latency_options[] = {
>> OPT_STRING('s', "sort", &sched.sort_order, "key[,key2...]",
>> "sort by key(s): runtime, switch, avg, max"),
>> + OPT_STRING('i', "input", &input_name, "file", "input file name"),
>> OPT_INTEGER('C', "CPU", &sched.profile_cpu,
>> "CPU to profile on"),
>> OPT_BOOLEAN('p', "pids", &sched.skip_merge,
>> @@ -3381,11 +3382,13 @@ int cmd_sched(int argc, const char **argv)
>> OPT_PARENT(sched_options)
>> };
>> const struct option replay_options[] = {
>> + OPT_STRING('i', "input", &input_name, "file", "input file name"),
>> OPT_UINTEGER('r', "repeat", &sched.replay_repeat,
>> "repeat the workload replay N times (-1: infinite)"),
>> OPT_PARENT(sched_options)
>> };
>> const struct option map_options[] = {
>> + OPT_STRING('i', "input", &input_name, "file", "input file name"),
>> OPT_BOOLEAN(0, "compact", &sched.map.comp,
>> "map output in compact mode"),
>> OPT_STRING(0, "color-pids", &sched.map.color_pids_str, "pids",
>> @@ -3397,6 +3400,7 @@ int cmd_sched(int argc, const char **argv)
>> OPT_PARENT(sched_options)
>> };
>> const struct option timehist_options[] = {
>> + OPT_STRING('i', "input", &input_name, "file", "input file name"),
>> OPT_STRING('k', "vmlinux", &symbol_conf.vmlinux_name,
>> "file", "vmlinux pathname"),
>> OPT_STRING(0, "kallsyms", &symbol_conf.kallsyms_name,
>> --
>> 2.23.0.37.g745f681
>>

This is not needed; -i already works with timehist (and others as I
recall). I believe OPT_PARENT passes the option to the subcommand.