diff options
author | Li Zefan <lizf@cn.fujitsu.com> | 2011-12-27 14:25:55 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2012-01-12 11:35:08 -0800 |
commit | 2481cbcad1ba76a928c74c2e8cab67d8c77823ab (patch) | |
tree | 23f5b3d7aada19cf8f7ce69c9003f6ea891cabb7 /kernel | |
parent | 630fe244a944ebb950e8b2076177547266d255cf (diff) | |
download | kernel_samsung_tuna-2481cbcad1ba76a928c74c2e8cab67d8c77823ab.zip kernel_samsung_tuna-2481cbcad1ba76a928c74c2e8cab67d8c77823ab.tar.gz kernel_samsung_tuna-2481cbcad1ba76a928c74c2e8cab67d8c77823ab.tar.bz2 |
cgroup: fix to allow mounting a hierarchy by name
commit 0d19ea866562e46989412a0676412fa0983c9ce7 upstream.
If we mount a hierarchy with a specified name, the name is unique,
and we can use it to mount the hierarchy without specifying its
set of subsystem names. This feature is documented is
Documentation/cgroups/cgroups.txt section 2.3
Here's an example:
# mount -t cgroup -o cpuset,name=myhier xxx /cgroup1
# mount -t cgroup -o name=myhier xxx /cgroup2
But it was broken by commit 32a8cf235e2f192eb002755076994525cdbaa35a
(cgroup: make the mount options parsing more accurate)
This fixes the regression.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/cgroup.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c index 575a5e7..2efce77 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -1173,10 +1173,10 @@ static int parse_cgroupfs_options(char *data, struct cgroup_sb_opts *opts) /* * If the 'all' option was specified select all the subsystems, - * otherwise 'all, 'none' and a subsystem name options were not - * specified, let's default to 'all' + * otherwise if 'none', 'name=' and a subsystem name options + * were not specified, let's default to 'all' */ - if (all_ss || (!all_ss && !one_ss && !opts->none)) { + if (all_ss || (!one_ss && !opts->none && !opts->name)) { for (i = 0; i < CGROUP_SUBSYS_COUNT; i++) { struct cgroup_subsys *ss = subsys[i]; if (ss == NULL) |