diff options
Diffstat (limited to 'cgroupfs-create-sys-fs-cgroup-to-mount-cgroupfs-on.patch')
| -rw-r--r-- | cgroupfs-create-sys-fs-cgroup-to-mount-cgroupfs-on.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/cgroupfs-create-sys-fs-cgroup-to-mount-cgroupfs-on.patch b/cgroupfs-create-sys-fs-cgroup-to-mount-cgroupfs-on.patch new file mode 100644 index 00000000000000..dc173400cbbb4a --- /dev/null +++ b/cgroupfs-create-sys-fs-cgroup-to-mount-cgroupfs-on.patch @@ -0,0 +1,54 @@ +From: Greg KH <gregkh@suse.de> +To: Paul Menage <menage@google.com>, Li Zefan <lizf@cn.fujitsu.com> +Cc: Lennart Poettering <lennart@poettering.net>, + Kay Sievers <kay.sievers@vrfy.org>, + Andrew Morton <akpm@linux-foundation.org>, + KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, + Ben Blum <bblum@andrew.cmu.edu>, + containers@lists.linux-foundation.org, linux-kernel@vger.kernel.org +Subject: cgroupfs: create /sys/fs/cgroup to mount cgroupfs on + +We really shouldn't be asking userspace to create new root filesystems. +So follow along with all of the other in-kernel filesystems, and provide +a mount point in sysfs. + +For cgroupfs, this should be in /sys/fs/cgroup/ This change provides +that mount point when the cgroup filesystem is registered in the kernel. + +Cc: Paul Menage <menage@google.com> +Cc: Li Zefan <lizf@cn.fujitsu.com> +Cc: Lennart Poettering <lennart@poettering.net> +Cc: Kay Sievers <kay.sievers@vrfy.org> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- a/kernel/cgroup.c ++++ b/kernel/cgroup.c +@@ -1623,6 +1623,8 @@ static struct file_system_type cgroup_fs_type = { + .kill_sb = cgroup_kill_sb, + }; + ++static struct kobject *cgroup_kobj; ++ + static inline struct cgroup *__d_cgrp(struct dentry *dentry) + { + return dentry->d_fsdata; +@@ -3871,9 +3873,18 @@ int __init cgroup_init(void) + hhead = css_set_hash(init_css_set.subsys); + hlist_add_head(&init_css_set.hlist, hhead); + BUG_ON(!init_root_id(&rootnode)); ++ ++ cgroup_kobj = kobject_create_and_add("cgroup", fs_kobj); ++ if (!cgroup_kobj) { ++ err = -ENOMEM; ++ goto out; ++ } ++ + err = register_filesystem(&cgroup_fs_type); +- if (err < 0) ++ if (err < 0) { ++ kobject_put(cgroup_kobj); + goto out; ++ } + + proc_create("cgroups", 0, NULL, &proc_cgroupstats_operations); + |
