perf test: Make 'list' use same filtering code as main 'perf test'
tip-bot for Arnaldo Carvalho de Melo
merge botCommit-ID: 6d02acc1918094de12f885b35db9477e579b6bd0 Gitweb: http://git.kernel.org/tip/6d02acc1918094de12f885b35db9477e579b6bd0 Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Fri, 4 Aug 2017 11:16:40 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Fri, 11 Aug 2017 16:06:27 -0300
perf test: Make 'list' use same filtering code as main 'perf test'
Before:
# perf test Synth 39: Synthesize thread map : Ok 41: Synthesize cpu map : Ok 42: Synthesize stat config : Ok 43: Synthesize stat : Ok 44: Synthesize stat round : Ok 45: Synthesize attr update : Ok # perf test list Synth #
After:
# perf test Synth 39: Synthesize thread map : Ok 41: Synthesize cpu map : Ok 42: Synthesize stat config : Ok 43: Synthesize stat : Ok 44: Synthesize stat round : Ok 45: Synthesize attr update : Ok # perf test list Synth 39: Synthesize thread map 41: Synthesize cpu map 42: Synthesize stat config 43: Synthesize stat 44: Synthesize stat round 45: Synthesize attr update #
Cc Adrian Hunter <[email protected]>
Cc David Ahern <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Michael Petlan <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Thomas Richter <[email protected]>
Cc Wang Nan <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/perf/tests/builtin-test.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-)
tools/perf/tests/builtin-test.c +10 -8
@@ -609,15 +609,16 @@ static int perf_test__list_shell(int argc, const char **argv, int i)return -1 ;for_each_shell_test (dir, ent) { +int curr = i++;char bf[256 ]; -const char *desc =shell_test__description (bf,sizeof (bf), path, ent->d_name); - - ++i; +struct test t = { + .desc =shell_test__description (bf,sizeof (bf), path, ent->d_name), + }; -if (argc >1 && !strstr (desc, argv[1 ])) +if (!perf_test__matches (&t, curr, argc, argv))continue ; -pr_info ("%2d: %s\n" , i, desc); +pr_info ("%2d: %s\n" , i, t.desc); }closedir (dir);
@@ -631,9 +632,10 @@ static int perf_test__list(int argc, const char **argv)int i =0 ;for_each_test (j, t) { - ++i; +int curr = i++; -if (argc >1 && !strstr (t->desc, argv[1 ])) +if (!perf_test__matches (t, curr, argc, argv) || + (t->is_supported && !t->is_supported ()))continue ;pr_info ("%2d: %s\n" , i, t->desc);
@@ -668,7 +670,7 @@ int cmd_test(int argc, const char **argv) argc =parse_options_subcommand (argc, argv, test_options, test_subcommands, test_usage,0 );if (argc >=1 && !strcmp (argv[0 ],"list" )) -return perf_test__list (argc, argv); +return perf_test__list (argc -1 , argv +1 ); symbol_conf.priv_size =sizeof (int ); symbol_conf.sort_by_name = true;