From: Peter Zijlstra <peterz@infradead.org>
To: Paul Menage <menage@google.com>
Cc: balbir@linux.vnet.ibm.com, eranian@google.com,
linux-kernel@vger.kernel.org, mingo@elte.hu, paulus@samba.org,
davem@davemloft.net, fweisbec@gmail.com,
perfmon2-devel@lists.sf.net, eranian@gmail.com,
robert.richter@amd.com, acme@redhat.com, lizf@cn.fujitsu.com
Subject: Re: [RFC][PATCH] cgroup: Fix cgroup_subsys::exit callback
Date: Mon, 07 Feb 2011 21:02:39 +0100 [thread overview]
Message-ID: <1297108959.13327.54.camel@laptop> (raw)
In-Reply-To: <AANLkTimF+8XAZxF4psrXSKx1CHFxin6AW=tu5OLGUgNi@mail.gmail.com>
On Mon, 2011-02-07 at 11:28 -0800, Paul Menage wrote:
> On Mon, Feb 7, 2011 at 8:10 AM, Peter Zijlstra <peterz@infradead.org> wrote:
> >
> > Make the ::exit method act like ::attach, it is after all very nearly
> > the same thing.
>
> The major difference between attach and exit is that the former is
> only triggered in response to user cgroup-management action, whereas
> the latter is triggered whenever a task exits, even if cgroups aren't
> set up.
And the major likeness is that they both migrate a task from one cgroup
to another. You cannot simply ignore that.
> > void cgroup_exit(struct task_struct *tsk, int run_callbacks)
> > {
> > - int i;
> > struct css_set *cg;
> > + int i;
> >
> > - if (run_callbacks && need_forkexit_callback) {
> > - /*
> > - * modular subsystems can't use callbacks, so no need to lock
> > - * the subsys array
> > - */
> > - for (i = 0; i < CGROUP_BUILTIN_SUBSYS_COUNT; i++) {
> > - struct cgroup_subsys *ss = subsys[i];
> > - if (ss->exit)
> > - ss->exit(ss, tsk);
> > - }
> > - }
> > + mutex_lock(&cgroup_mutex);
>
> NACK - cgroup_mutex is way too heavy to take in the task exit path.
> We'll need to find some other way to fix this if it's really needed.
> task->alloc_lock is also normally a valid thing to synchronize against
> cgroup moves, but I'd have to look at the exit path to see if it's
> still valid there.
If maybe you're like respond more often than about once every two months
I might actually care what you think.
next prev parent reply other threads:[~2011-02-07 20:01 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-20 13:30 [PATCH 1/2] perf_events: add cgroup support (v8) Stephane Eranian
2011-01-20 14:39 ` Peter Zijlstra
2011-01-20 14:46 ` Stephane Eranian
2011-02-02 11:29 ` Peter Zijlstra
2011-02-02 11:50 ` Balbir Singh
2011-02-02 12:46 ` Peter Zijlstra
2011-02-02 19:02 ` Balbir Singh
2011-02-07 16:10 ` [RFC][PATCH] cgroup: Fix cgroup_subsys::exit callback Peter Zijlstra
2011-02-07 19:28 ` Paul Menage
2011-02-07 20:02 ` Peter Zijlstra [this message]
2011-02-07 21:21 ` Paul Menage
2011-02-08 10:24 ` Peter Zijlstra
2011-02-10 2:04 ` Li Zefan
2011-02-11 12:13 ` Peter Zijlstra
2011-02-14 4:32 ` Paul Menage
2011-02-16 13:46 ` [tip:perf/core] " tip-bot for Peter Zijlstra
2011-02-13 12:52 ` [RFC][PATCH] " Balbir Singh
2011-02-07 19:29 ` [PATCH 1/2] perf_events: add cgroup support (v8) Paul Menage
2011-02-07 20:09 ` Peter Zijlstra
2011-02-07 21:33 ` Paul Menage
2011-02-07 16:10 ` Peter Zijlstra
2011-02-07 20:30 ` Stephane Eranian
2011-02-08 22:31 ` Stephane Eranian
2011-02-09 9:47 ` Peter Zijlstra
2011-02-10 11:47 ` Stephane Eranian
2011-02-11 0:55 ` Li Zefan
2011-02-11 9:56 ` Stephane Eranian
2011-02-11 13:36 ` Stephane Eranian
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1297108959.13327.54.camel@laptop \
--to=peterz@infradead.org \
--cc=acme@redhat.com \
--cc=balbir@linux.vnet.ibm.com \
--cc=davem@davemloft.net \
--cc=eranian@gmail.com \
--cc=eranian@google.com \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=menage@google.com \
--cc=mingo@elte.hu \
--cc=paulus@samba.org \
--cc=perfmon2-devel@lists.sf.net \
--cc=robert.richter@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.