From 24fb6b8e7c2280000966e3f2c9c8069a538518eb Mon Sep 17 00:00:00 2001 From: Ian Rogers Date: Sat, 21 Mar 2020 09:43:31 -0700 Subject: perf/cgroup: Correct indirection in perf_less_group_idx() The void* in perf_less_group_idx() is to a member in the array which points at a perf_event*, as such it is a perf_event**. Reported-By: John Sperbeck Fixes: 6eef8a7116de ("perf/core: Use min_heap in visit_groups_merge()") Signed-off-by: Ian Rogers Signed-off-by: Peter Zijlstra (Intel) Signed-off-by: Ingo Molnar Link: https://lkml.kernel.org/r/20200321164331.107337-1-irogers@google.com --- kernel/events/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/events/core.c b/kernel/events/core.c index 7afd0b503406..26de0a5ee887 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -3522,7 +3522,8 @@ static void cpu_ctx_sched_out(struct perf_cpu_context *cpuctx, static bool perf_less_group_idx(const void *l, const void *r) { - const struct perf_event *le = l, *re = r; + const struct perf_event *le = *(const struct perf_event **)l; + const struct perf_event *re = *(const struct perf_event **)r; return le->group_index < re->group_index; } -- cgit