mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-16 21:35:07 +00:00
perf test: Fix memory leaks on event-times error paths
These error paths occur without sufficient permissions. Fix the memory leaks to make leak sanitizer happier. Signed-off-by: Ian Rogers <irogers@google.com> Link: https://lore.kernel.org/r/20241001052327.7052-3-irogers@google.com Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
parent
7f6ccb70e4
commit
1334ee9169
@ -126,6 +126,7 @@ static int attach__cpu_disabled(struct evlist *evlist)
|
|||||||
evsel->core.attr.disabled = 1;
|
evsel->core.attr.disabled = 1;
|
||||||
|
|
||||||
err = evsel__open_per_cpu(evsel, cpus, -1);
|
err = evsel__open_per_cpu(evsel, cpus, -1);
|
||||||
|
perf_cpu_map__put(cpus);
|
||||||
if (err) {
|
if (err) {
|
||||||
if (err == -EACCES)
|
if (err == -EACCES)
|
||||||
return TEST_SKIP;
|
return TEST_SKIP;
|
||||||
@ -134,7 +135,6 @@ static int attach__cpu_disabled(struct evlist *evlist)
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
perf_cpu_map__put(cpus);
|
|
||||||
return evsel__enable(evsel);
|
return evsel__enable(evsel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -153,10 +153,10 @@ static int attach__cpu_enabled(struct evlist *evlist)
|
|||||||
}
|
}
|
||||||
|
|
||||||
err = evsel__open_per_cpu(evsel, cpus, -1);
|
err = evsel__open_per_cpu(evsel, cpus, -1);
|
||||||
|
perf_cpu_map__put(cpus);
|
||||||
if (err == -EACCES)
|
if (err == -EACCES)
|
||||||
return TEST_SKIP;
|
return TEST_SKIP;
|
||||||
|
|
||||||
perf_cpu_map__put(cpus);
|
|
||||||
return err ? TEST_FAIL : TEST_OK;
|
return err ? TEST_FAIL : TEST_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,6 +188,7 @@ static int test_times(int (attach)(struct evlist *),
|
|||||||
err = attach(evlist);
|
err = attach(evlist);
|
||||||
if (err == TEST_SKIP) {
|
if (err == TEST_SKIP) {
|
||||||
pr_debug(" SKIP : not enough rights\n");
|
pr_debug(" SKIP : not enough rights\n");
|
||||||
|
evlist__delete(evlist);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user