]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
perf bench evlist-open-close: Reduce scope of 2 variables
authorIan Rogers <irogers@google.com>
Thu, 10 Apr 2025 17:36:21 +0000 (10:36 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 25 Apr 2025 15:32:13 +0000 (12:32 -0300)
Make 2 global variables local. Reduces ELF binary size by removing
relocations. For a no flags build, the perf binary size is reduced by
4,144 bytes on x86-64.

Reviewed-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ian Rogers <irogers@google.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Dapeng Mi <dapeng1.mi@linux.intel.com>
Cc: Dominique Martinet <asmadeus@codewreck.org>
Cc: Dr. David Alan Gilbert <linux@treblig.org>
Cc: Hao Ge <gehao@kylinos.cn>
Cc: Howard Chu <howardchu95@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Levi Yun <yeoreum.yun@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Tengda Wu <wutengda@huaweicloud.com>
Cc: Thomas Richter <tmricht@linux.ibm.com>
Cc: Veronika Molnarova <vmolnaro@redhat.com>
Cc: Weilin Wang <weilin.wang@intel.com>
Cc: Xu Yang <xu.yang_2@nxp.com>
Link: https://lore.kernel.org/r/20250410173631.1713627-3-irogers@google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/bench/evlist-open-close.c

index 5a27691469edb4bf28d16336317e91a95030b023..79cedcf94a399145eb05f5145254bbe08e0bdeec 100644 (file)
@@ -46,25 +46,6 @@ static struct record_opts opts = {
        .ctl_fd_ack          = -1,
 };
 
-static const struct option options[] = {
-       OPT_STRING('e', "event", &event_string, "event", "event selector. use 'perf list' to list available events"),
-       OPT_INTEGER('n', "nr-events", &nr_events,
-                    "number of dummy events to create (default 1). If used with -e, it clones those events n times (1 = no change)"),
-       OPT_INTEGER('i', "iterations", &iterations, "Number of iterations used to compute average (default=100)"),
-       OPT_BOOLEAN('a', "all-cpus", &opts.target.system_wide, "system-wide collection from all CPUs"),
-       OPT_STRING('C', "cpu", &opts.target.cpu_list, "cpu", "list of cpus where to open events"),
-       OPT_STRING('p', "pid", &opts.target.pid, "pid", "record events on existing process id"),
-       OPT_STRING('t', "tid", &opts.target.tid, "tid", "record events on existing thread id"),
-       OPT_STRING('u', "uid", &opts.target.uid_str, "user", "user to profile"),
-       OPT_BOOLEAN(0, "per-thread", &opts.target.per_thread, "use per-thread mmaps"),
-       OPT_END()
-};
-
-static const char *const bench_usage[] = {
-       "perf bench internals evlist-open-close <options>",
-       NULL
-};
-
 static int evlist__count_evsel_fds(struct evlist *evlist)
 {
        struct evsel *evsel;
@@ -225,6 +206,29 @@ out_error:
 
 int bench_evlist_open_close(int argc, const char **argv)
 {
+       const struct option options[] = {
+               OPT_STRING('e', "event", &event_string, "event",
+                          "event selector. use 'perf list' to list available events"),
+               OPT_INTEGER('n', "nr-events", &nr_events,
+                           "number of dummy events to create (default 1). If used with -e, it clones those events n times (1 = no change)"),
+               OPT_INTEGER('i', "iterations", &iterations,
+                           "Number of iterations used to compute average (default=100)"),
+               OPT_BOOLEAN('a', "all-cpus", &opts.target.system_wide,
+                           "system-wide collection from all CPUs"),
+               OPT_STRING('C', "cpu", &opts.target.cpu_list, "cpu",
+                          "list of cpus where to open events"),
+               OPT_STRING('p', "pid", &opts.target.pid, "pid",
+                          "record events on existing process id"),
+               OPT_STRING('t', "tid", &opts.target.tid, "tid",
+                          "record events on existing thread id"),
+               OPT_STRING('u', "uid", &opts.target.uid_str, "user", "user to profile"),
+               OPT_BOOLEAN(0, "per-thread", &opts.target.per_thread, "use per-thread mmaps"),
+               OPT_END()
+       };
+       const char *const bench_usage[] = {
+               "perf bench internals evlist-open-close <options>",
+               NULL
+       };
        char *evstr, errbuf[BUFSIZ];
        int err;