diff options
author | Song Liu <[email protected]> | 2020-01-22 11:50:27 -0800 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2020-01-28 21:20:19 +0100 |
commit | 07c5972951f088094776038006a0592a46d14bbc (patch) | |
tree | 520cbc9d27be3122880b5ddc43226e1350a08eec /net/unix/af_unix.c | |
parent | 003461559ef7a9bd0239bae35a22ad8924d6e9ad (diff) |
perf/cgroups: Install cgroup events to correct cpuctx
cgroup events are always installed in the cpuctx. However, when it is not
installed via IPI, list_update_cgroup_event() adds it to cpuctx of current
CPU, which triggers list corruption:
[] list_add double add: new=ffff888ff7cf0db0, prev=ffff888ff7ce82f0, next=ffff888ff7cf0db0.
To reproduce this, we can simply run:
# perf stat -e cs -a &
# perf stat -e cs -G anycgroup
Fix this by installing it to cpuctx that contains event->ctx, and the
proper cgrp_cpuctx_list.
Fixes: db0503e4f675 ("perf/core: Optimize perf_install_in_event()")
Suggested-by: Peter Zijlstra (Intel) <[email protected]>
Signed-off-by: Song Liu <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Cc: <[email protected]>
Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions