[PATCH] perf: evsel: Fix error handling in tp_format lookup

Hongling Zeng posted 1 patch 2 weeks, 1 day ago
tools/perf/util/evsel.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] perf: evsel: Fix error handling in tp_format lookup
Posted by Hongling Zeng 2 weeks, 1 day ago
In evsel__tp_format(), when trace_event__tp_format*() returns an error,
IS_ERR() checks the local variable 'tp_format', but PTR_ERR() incorrectly
uses 'evsel->tp_format' which hasn't been assigned yet.

Fix this by using PTR_ERR(tp_format) to extract the error code from the
correct variable.

Fixes: 6c8310e8380d ("perf evsel: Allow evsel__newtp without libtraceevent")
Signed-off-by: Hongling Zeng <zenghongling@kylinos.cn>
---
 tools/perf/util/evsel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index 2ee87fd84d3e..0cefeba41236 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -647,7 +647,7 @@ struct tep_event *evsel__tp_format(struct evsel *evsel)
 		tp_format = trace_event__tp_format(evsel->tp_sys, evsel->tp_name);
 
 	if (IS_ERR(tp_format)) {
-		int err = -PTR_ERR(evsel->tp_format);
+		int err = -PTR_ERR(tp_format);
 
 		errno = err;
 		pr_err("Error getting tracepoint format '%s': %m\n",
-- 
2.25.1
Re: [PATCH] perf: evsel: Fix error handling in tp_format lookup
Posted by Namhyung Kim 1 week, 3 days ago
On Fri, 10 Jul 2026 16:01:40 +0800, Hongling Zeng wrote:
> In evsel__tp_format(), when trace_event__tp_format*() returns an error,
> IS_ERR() checks the local variable 'tp_format', but PTR_ERR() incorrectly
> uses 'evsel->tp_format' which hasn't been assigned yet.
> 
> Fix this by using PTR_ERR(tp_format) to extract the error code from the
> correct variable.
> 
> [...]
Applied to perf-tools-next, thanks!

Best regards,
Namhyung