lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 04 Apr 2020 08:42:05 -0000 From: "tip-bot2 for Ian Rogers" <tip-bot2@...utronix.de> To: linux-tip-commits@...r.kernel.org Cc: Ian Rogers <irogers@...gle.com>, Jiri Olsa <jolsa@...hat.com>, Adrian Hunter <adrian.hunter@...el.com>, Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Andi Kleen <ak@...ux.intel.com>, Leo Yan <leo.yan@...aro.org>, Mark Rutland <mark.rutland@....com>, Namhyung Kim <namhyung@...nel.org>, Peter Zijlstra <peterz@...radead.org>, Stephane Eranian <eranian@...gle.com>, clang-built-linux@...glegroups.com, Arnaldo Carvalho de Melo <acme@...hat.com>, x86 <x86@...nel.org>, LKML <linux-kernel@...r.kernel.org> Subject: [tip: perf/urgent] perf parse-events: Fix 3 use after frees found with clang ASAN The following commit has been merged into the perf/urgent branch of tip: Commit-ID: d4953f7ef1a2e87ef732823af35361404d13fea8 Gitweb: https://git.kernel.org/tip/d4953f7ef1a2e87ef732823af35361404d13fea8 Author: Ian Rogers <irogers@...gle.com> AuthorDate: Sat, 14 Mar 2020 10:03:56 -07:00 Committer: Arnaldo Carvalho de Melo <acme@...hat.com> CommitterDate: Mon, 23 Mar 2020 11:08:29 -03:00 perf parse-events: Fix 3 use after frees found with clang ASAN Reproducible with a clang asan build and then running perf test in particular 'Parse event definition strings'. Signed-off-by: Ian Rogers <irogers@...gle.com> Acked-by: Jiri Olsa <jolsa@...hat.com> Cc: Adrian Hunter <adrian.hunter@...el.com> Cc: Alexander Shishkin <alexander.shishkin@...ux.intel.com> Cc: Andi Kleen <ak@...ux.intel.com> Cc: Leo Yan <leo.yan@...aro.org> Cc: Mark Rutland <mark.rutland@....com> Cc: Namhyung Kim <namhyung@...nel.org> Cc: Peter Zijlstra <peterz@...radead.org> Cc: Stephane Eranian <eranian@...gle.com> Cc: clang-built-linux@...glegroups.com Link: http://lore.kernel.org/lkml/20200314170356.62914-1-irogers@google.com Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com> --- tools/perf/util/evsel.c | 1 + tools/perf/util/parse-events.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index 816d930..15ccd19 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -1287,6 +1287,7 @@ void perf_evsel__exit(struct evsel *evsel) perf_thread_map__put(evsel->core.threads); zfree(&evsel->group_name); zfree(&evsel->name); + zfree(&evsel->pmu_name); perf_evsel__object.fini(evsel); } diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c index a7dc0b0..1010774 100644 --- a/tools/perf/util/parse-events.c +++ b/tools/perf/util/parse-events.c @@ -1449,7 +1449,7 @@ int parse_events_add_pmu(struct parse_events_state *parse_state, evsel = __add_event(list, &parse_state->idx, &attr, NULL, pmu, NULL, auto_merge_stats, NULL); if (evsel) { - evsel->pmu_name = name; + evsel->pmu_name = name ? strdup(name) : NULL; evsel->use_uncore_alias = use_uncore_alias; return 0; } else { @@ -1497,7 +1497,7 @@ int parse_events_add_pmu(struct parse_events_state *parse_state, evsel->snapshot = info.snapshot; evsel->metric_expr = info.metric_expr; evsel->metric_name = info.metric_name; - evsel->pmu_name = name; + evsel->pmu_name = name ? strdup(name) : NULL; evsel->use_uncore_alias = use_uncore_alias; evsel->percore = config_term_percore(&evsel->config_terms); } @@ -1547,7 +1547,7 @@ int parse_events_multi_pmu_add(struct parse_events_state *parse_state, if (!parse_events_add_pmu(parse_state, list, pmu->name, head, true, true)) { - pr_debug("%s -> %s/%s/\n", config, + pr_debug("%s -> %s/%s/\n", str, pmu->name, alias->str); ok++; }
Powered by blists - more mailing lists