cgroup: add css_parent()
[linux-2.6-block.git] / net / sched / cls_cgroup.c
index af412ab2b477777f9348cc51c839681f72a42c24..9e6b75e5efce4261cb46e5fe9160526564f74cd8 100644 (file)
@@ -50,9 +50,11 @@ static struct cgroup_subsys_state *cgrp_css_alloc(struct cgroup *cgrp)
 
 static int cgrp_css_online(struct cgroup *cgrp)
 {
-       if (cgrp->parent)
-               cgrp_cls_state(cgrp)->classid =
-                       cgrp_cls_state(cgrp->parent)->classid;
+       struct cgroup_cls_state *cs = cgrp_cls_state(cgrp);
+       struct cgroup_cls_state *parent = css_cls_state(css_parent(&cs->css));
+
+       if (parent)
+               cs->classid = parent->classid;
        return 0;
 }