aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/cgroup.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c
index 7bf3ce09c50c..678a22c75fdb 100644
--- a/kernel/cgroup.c
+++ b/kernel/cgroup.c
@@ -1091,12 +1091,16 @@ static int rebind_subsystems(struct cgroupfs_root *root,
1091 cgrp->subsys[i]->cgroup = cgrp; 1091 cgrp->subsys[i]->cgroup = cgrp;
1092 list_move(&ss->sibling, &root->subsys_list); 1092 list_move(&ss->sibling, &root->subsys_list);
1093 ss->root = root; 1093 ss->root = root;
1094 if (ss->bind)
1095 ss->bind(cgrp);
1094 /* refcount was already taken, and we're keeping it */ 1096 /* refcount was already taken, and we're keeping it */
1095 } else if (bit & removed_mask) { 1097 } else if (bit & removed_mask) {
1096 /* We're removing this subsystem */ 1098 /* We're removing this subsystem */
1097 BUG_ON(ss == NULL); 1099 BUG_ON(ss == NULL);
1098 BUG_ON(cgrp->subsys[i] != dummytop->subsys[i]); 1100 BUG_ON(cgrp->subsys[i] != dummytop->subsys[i]);
1099 BUG_ON(cgrp->subsys[i]->cgroup != cgrp); 1101 BUG_ON(cgrp->subsys[i]->cgroup != cgrp);
1102 if (ss->bind)
1103 ss->bind(dummytop);
1100 dummytop->subsys[i]->cgroup = dummytop; 1104 dummytop->subsys[i]->cgroup = dummytop;
1101 cgrp->subsys[i] = NULL; 1105 cgrp->subsys[i] = NULL;
1102 subsys[i]->root = &rootnode; 1106 subsys[i]->root = &rootnode;