[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YjrWxnnIZvn3PWoX@hirez.programming.kicks-ass.net>
Date: Wed, 23 Mar 2022 09:13:58 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Chengming Zhou <zhouchengming@...edance.com>
Cc: mingo@...hat.com, acme@...nel.org, mark.rutland@....com,
alexander.shishkin@...ux.intel.com, jolsa@...nel.org,
namhyung@...nel.org, eranian@...gle.com,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org,
duanxiongchun@...edance.com, songmuchun@...edance.com
Subject: Re: [External] Re: [PATCH v2 2/6] perf/core: Introduce percpu
perf_cgroup
On Wed, Mar 23, 2022 at 12:33:51AM +0800, Chengming Zhou wrote:
> On 2022/3/22 9:01 下午, Peter Zijlstra wrote:
> > On Tue, Mar 22, 2022 at 08:08:30PM +0800, Chengming Zhou wrote:
> >> Although we don't have incosistency problem any more, we can
> >> have other problem like:
> >>
> >> CPU1 CPU2
> >> (in context_switch) (attach running task)
> >> prev->cgroups = cgrp2
> >> perf_cgroup_sched_switch(prev, next)
> >> cgrp2 == cgrp2 is True
> >>
> >
> > Again, I'm not following, how can you attach to a running task from
> > another CPU ?
>
> Hi Peter, I make a little testcase which can reproduce the race
> problem, on system with PSI disabled. Because when PSI enabled,
> cgroup_move_task() will hold rq lock to assign task->cgroups.
No, the problem is that you're talking about cgroup attach while I'm
thinking of attaching a event to a task. And your picture has nothing to
clarify.
Those pictures of yours could really do with a few more function names
in them, otherwise it's absolutely unclear what code is running where.
Powered by blists - more mailing lists