]> err.no Git - linux-2.6/blobdiff - kernel/cgroup.c
V4L/DVB (7267): cx88: Fix: Loads tuner module before sending commands to it
[linux-2.6] / kernel / cgroup.c
index 841259361724ffac71821cc9955783de76e008c4..e9c2fb01e89bf9e0943c3e7a1230098af3df6243 100644 (file)
@@ -470,7 +470,6 @@ static struct css_set *find_css_set(
        /* Link this cgroup group into the list */
        list_add(&res->list, &init_css_set.list);
        css_set_count++;
-       INIT_LIST_HEAD(&res->tasks);
        write_unlock(&css_set_lock);
 
        return res;
@@ -920,7 +919,6 @@ static int cgroup_get_rootdir(struct super_block *sb)
        if (!inode)
                return -ENOMEM;
 
-       inode->i_op = &simple_dir_inode_operations;
        inode->i_fop = &simple_dir_operations;
        inode->i_op = &cgroup_dir_inode_operations;
        /* directories start off with i_nlink == 2 (for "." entry) */
@@ -2234,7 +2232,6 @@ static long cgroup_create(struct cgroup *parent, struct dentry *dentry,
 
        mutex_lock(&cgroup_mutex);
 
-       cgrp->flags = 0;
        INIT_LIST_HEAD(&cgrp->sibling);
        INIT_LIST_HEAD(&cgrp->children);
        INIT_LIST_HEAD(&cgrp->css_sets);
@@ -2244,6 +2241,9 @@ static long cgroup_create(struct cgroup *parent, struct dentry *dentry,
        cgrp->root = parent->root;
        cgrp->top_cgroup = parent->top_cgroup;
 
+       if (notify_on_release(parent))
+               set_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags);
+
        for_each_subsys(root, ss) {
                struct cgroup_subsys_state *css = ss->create(ss, cgrp);
                if (IS_ERR(css)) {