Skip to contentSkip to conversation

perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx()

tip:perf/core tip-bot for Hisao Tanabe 1 participant 1 message Sep 6, 2018 perf events

lore
Share & tools
lore

tip-bot for Hisao Tanabe

author merge bot
#0 lore raw
Commit-ID:  fd8d2702791a970c751f8b526a17d8e725a05b46
Gitweb:     https://git.kernel.org/tip/fd8d2702791a970c751f8b526a17d8e725a05b46
Author:     Hisao Tanabe <[email protected]>
AuthorDate: Sat, 25 Aug 2018 00:45:56 +0900
Committer:  Arnaldo Carvalho de Melo <[email protected]>
CommitDate: Thu, 30 Aug 2018 14:49:25 -0300

perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx()

If evsel is NULL, we should return NULL to avoid a NULL pointer dereference a bit later in the code.

Cc Jiri Olsa <[email protected]>
Cc Wang Nan <[email protected]>
Fixes 03e0a7df3efd ("perf tools: Introduce bpf-output event")

LPU-Reference: [email protected]

---
 tools/perf/util/evsel.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
tools/perf/util/evsel.c +3 -2
index c980bbff6353..1a61628a1c12 100644
@@ -251,8 +251,9 @@ struct perf_evsel *perf_evsel__new_idx(struct perf_event_attr *attr, int idx)
 {
 	struct perf_evsel *evsel = zalloc(perf_evsel__object.size);
 
-	if (evsel != NULL)
-		perf_evsel__init(evsel, attr, idx);
+	if (!evsel)
+		return NULL;
+	perf_evsel__init(evsel, attr, idx);
 
 	if (perf_evsel__is_bpf_output(evsel)) {
 		evsel->attr.sample_type |= (PERF_SAMPLE_RAW | PERF_SAMPLE_TIME |