[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090109152422.82020371.kamezawa.hiroyu@jp.fujitsu.com>
Date: Fri, 9 Jan 2009 15:24:22 +0900
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To: Li Zefan <lizf@...fujitsu.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"menage@...gle.com" <menage@...gle.com>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>
Subject: Re: [RFC][PATCH] NOOP cgroup subsystem
On Fri, 09 Jan 2009 14:14:55 +0800
Li Zefan <lizf@...fujitsu.com> wrote:
> KAMEZAWA Hiroyuki wrote:
> > How about this idea ? Any comments are welcome.
> >
> > -Kame
> >
> > ==
> > From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
> >
> > Add an NO OPERATION cgroup subsystem.
> >
> > Cgroup itself is providing a feature to attach a task(PID) to some class.
> > This feature itself is very useful but "no operation" cgroup is not supported
> > now other than debug cgroup. (But debug cgroup should be for DEBUG. distro
> > may not configure it.)
> >
>
> Then how can we make sure distro will configure this noop subsys. :)
>
I'll ask ;) or set default to y. (because there is almost no overhead.)
> Or we can make the debug subsys always configured if CONFIG_CGROUP=y ?
> The debug system adds no runtime overhead, and it's about 100 lines
> of code only.
>
I considered that at fist. I wrote this for 2 reasones.
- Name of "debug" is no suitable for general use.
- I wonder I can add some more debug support to debug cgroup like fault
injection. For example,
Add an create_may_fail file to debug cgroup.
# echo 1 > debug.create_may_fail
When create_may_fail is "1", debug->create() will fail at 50% of probability.
(to make this test more useful, we should move debug_cgroup's subsys id to
be more higher.)
I'd like to add this kind of debug feature to debug cgroup when memcg is settled.
-Kame
> > Motivation: Simply classify Applications by cgroup
> > When using cgroup for classifying applications, some kind of "control" or
> > "account" subsys must be used. For flexible use of cgroup's nature of
> > classifying applications, NOOP is useful. It can be used regardless of
> > resource accounting unit or name spaces or some controls.
> > IOW, NOOP cgroup allows users to tie PIDs with some nickname.
> >
> > After this, application can be checked whether it's still alive or not by
> >
> > mount -t cgroup none /var/apps noop
> > mkdir /var/apps/mydaemon
> > echo 0 > /var/apps/mydaemon
> > /etc/init.d/mydaemon start
> > exit
> >
> > This can be used as the same technique of "recording pid into /var/run/xxx.pid"
> > and not necessary to remove stale files. If mydaemon dies, tasks file will
> > be empty and notify_on_release handler can be used.
> >
> > I myself want to use this for replacement of "ps -elf | grep" if libcgroup supports
> > ps under cgroup.
> >
> > Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists