[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6599ad830809041603t320a15eakdfbc6fcab232aa59@mail.gmail.com>
Date: Thu, 4 Sep 2008 16:03:43 -0700
From: "Paul Menage" <menage@...gle.com>
To: "Dhaval Giani" <dhaval@...ux.vnet.ibm.com>
Cc: pj@....com, danms@...ibm.com, "Balbir Singh" <balbir@...ibm.com>,
lkml <linux-kernel@...r.kernel.org>,
libcg-devel <libcg-devel@...ts.sourceforge.net>
Subject: Re: Default values for cpuset.mems, cpus for children created
On Fri, Aug 15, 2008 at 12:31 PM, Dhaval Giani
<dhaval@...ux.vnet.ibm.com> wrote:
> Now an application programmer does not really care where and how
> subsystems are mounted (or at least that is what libcgroup aims to
> achieve :-) ). And such a scenario when the cpuset has not been handled
> is going to lead to failures which a user is not expecting.
>
> To work around this, I am making a change which will just set the values
> which the parent group has for unfilled values, but I can already see
> cpuset breaking that assumption as well. (for example exclusive
> cpusets).
Yes, this is an awkwardness with the cpusets model of recursively
sharing a set of identifiable resources. Quite apart from the
backwards compatibility issue, if you make new cpusets inherit their
parent's resources you break the exclusive setting, and if you don't
you require special setup before the cgroup can be used.
There's already a precedent in the cpuset_clone() function, which does
inherit the parent's resources, but I don't think the clone behaviour
is widely used, and even that doesn't handle the case of exclusive
siblings.
I'm inclined to say that this is a userspace bug - if you don't want
cpusets attached to your cgroup hierarchy, don't include them in the
set of mounted subsystems.
Paul
--
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