[PATCH -next 3/5] perf: Remove duplicate errbuf

From: Chen Zhongjin
Date: Sun Sep 25 2022 - 23:19:07 EST


char errbuf[BUFSIZ] is defined twice in trace__run.

However out_error_open is not cross to other out_error path, they can
share one errbuf together.

Define the errbuf[BUFSIZ] at the beginning of function, and remove the
redefinations of them for code cleaning.

Signed-off-by: Chen Zhongjin <chenzhongjin@xxxxxxxxxx>
---
tools/perf/builtin-trace.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 7ecd76428440..5660c0ee3507 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -3937,6 +3937,7 @@ static int trace__run(struct trace *trace, int argc, const char **argv)
unsigned long before;
const bool forks = argc > 0;
bool draining = false;
+ char errbuf[BUFSIZ];

trace->live = true;

@@ -4027,8 +4028,6 @@ static int trace__run(struct trace *trace, int argc, const char **argv)

err = bpf__apply_obj_config();
if (err) {
- char errbuf[BUFSIZ];
-
bpf__strerror_apply_obj_config(err, errbuf, sizeof(errbuf));
pr_err("ERROR: Apply config to BPF failed: %s\n",
errbuf);
@@ -4185,8 +4184,6 @@ static int trace__run(struct trace *trace, int argc, const char **argv)
trace->evlist = NULL;
trace->live = false;
return err;
-{
- char errbuf[BUFSIZ];

out_error_sched_stat_runtime:
tracing_path__strerror_open_tp(errno, errbuf, sizeof(errbuf), "sched", "sched_stat_runtime");
@@ -4213,7 +4210,7 @@ static int trace__run(struct trace *trace, int argc, const char **argv)
evsel->filter, evsel__name(evsel), errno,
str_error_r(errno, errbuf, sizeof(errbuf)));
goto out_delete_evlist;
-}
+
out_error_mem:
fprintf(trace->output, "Not enough memory to run!\n");
goto out_delete_evlist;
--
2.17.1