[PATCH v2 0/6] perf/core: Fixes and cleanup for cgroup events

From: Chengming Zhou
Date: Tue Mar 22 2022 - 08:09:50 EST


Hi,

This patchset starts from the v1 RFC patch[1] that try to fix a race
problem between perf_cgroup_switch() and perf_cgroup_attach(), then
change the usage of perf_cgroup_from_task() to use stable cpuctx->cgrp
in perf_cgroup active time start and stop for the similar reason. Then
remove some obselete comments and some code cleanup.

[1] https://lore.kernel.org/lkml/20220308135948.55336-1-zhouchengming@xxxxxxxxxxxxx/

v2:
- split into two patches to fix the race problem for easier review
- use cpuctx->cgrp when start ctx time and delete unused task argument
- use cpuctx->cgrp when update ctx time from cgroup perf_event
- always set cpuctx->cgrp when the first cgroup event enabled
- remove obselete comments

Chengming Zhou (6):
perf/core: Fix incosistency between cgroup sched_out and sched_in
perf/core: Introduce percpu perf_cgroup
perf/core: Don't pass task around when ctx sched in
perf/core: Use stable cpuctx->cgrp when update perf cgroup time
perf/core: Always set cpuctx cgrp when enable cgroup event
perf/core: Don't need event_filter_match when merge_sched_in()

kernel/events/core.c | 218 ++++++++++++-------------------------------
1 file changed, 60 insertions(+), 158 deletions(-)

--
2.20.1