diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/perf/Documentation/perf-bench.txt | 4 | ||||
-rw-r--r-- | tools/perf/bench/bench.h | 1 | ||||
-rw-r--r-- | tools/perf/builtin-bench.c | 7 |
3 files changed, 12 insertions, 0 deletions
diff --git a/tools/perf/Documentation/perf-bench.txt b/tools/perf/Documentation/perf-bench.txt index 4464ad770d51..f6480cbf309b 100644 --- a/tools/perf/Documentation/perf-bench.txt +++ b/tools/perf/Documentation/perf-bench.txt | |||
@@ -16,6 +16,10 @@ This 'perf bench' command is a general framework for benchmark suites. | |||
16 | 16 | ||
17 | COMMON OPTIONS | 17 | COMMON OPTIONS |
18 | -------------- | 18 | -------------- |
19 | -r:: | ||
20 | --repeat=:: | ||
21 | Specify amount of times to repeat the run (default 10). | ||
22 | |||
19 | -f:: | 23 | -f:: |
20 | --format=:: | 24 | --format=:: |
21 | Specify format style. | 25 | Specify format style. |
diff --git a/tools/perf/bench/bench.h b/tools/perf/bench/bench.h index eba46709b279..3c4dd44d45cb 100644 --- a/tools/perf/bench/bench.h +++ b/tools/perf/bench/bench.h | |||
@@ -43,5 +43,6 @@ extern int bench_futex_requeue(int argc, const char **argv, const char *prefix); | |||
43 | #define BENCH_FORMAT_UNKNOWN -1 | 43 | #define BENCH_FORMAT_UNKNOWN -1 |
44 | 44 | ||
45 | extern int bench_format; | 45 | extern int bench_format; |
46 | extern unsigned int bench_repeat; | ||
46 | 47 | ||
47 | #endif | 48 | #endif |
diff --git a/tools/perf/builtin-bench.c b/tools/perf/builtin-bench.c index 1e6e77710545..b9a56fa83330 100644 --- a/tools/perf/builtin-bench.c +++ b/tools/perf/builtin-bench.c | |||
@@ -104,9 +104,11 @@ static const char *bench_format_str; | |||
104 | 104 | ||
105 | /* Output/formatting style, exported to benchmark modules: */ | 105 | /* Output/formatting style, exported to benchmark modules: */ |
106 | int bench_format = BENCH_FORMAT_DEFAULT; | 106 | int bench_format = BENCH_FORMAT_DEFAULT; |
107 | unsigned int bench_repeat = 10; /* default number of times to repeat the run */ | ||
107 | 108 | ||
108 | static const struct option bench_options[] = { | 109 | static const struct option bench_options[] = { |
109 | OPT_STRING('f', "format", &bench_format_str, "default", "Specify format style"), | 110 | OPT_STRING('f', "format", &bench_format_str, "default", "Specify format style"), |
111 | OPT_UINTEGER('r', "repeat", &bench_repeat, "Specify amount of times to repeat the run"), | ||
110 | OPT_END() | 112 | OPT_END() |
111 | }; | 113 | }; |
112 | 114 | ||
@@ -226,6 +228,11 @@ int cmd_bench(int argc, const char **argv, const char *prefix __maybe_unused) | |||
226 | goto end; | 228 | goto end; |
227 | } | 229 | } |
228 | 230 | ||
231 | if (bench_repeat == 0) { | ||
232 | printf("Invalid repeat option: Must specify a positive value\n"); | ||
233 | goto end; | ||
234 | } | ||
235 | |||
229 | if (argc < 1) { | 236 | if (argc < 1) { |
230 | print_usage(); | 237 | print_usage(); |
231 | goto end; | 238 | goto end; |