cgroup: add/update accessors which obtain subsys specific data from css
[deliverable/linux.git] / block / blk-cgroup.h
index 8056c03a3382f595212530f6bd1c4dd1a5282ac8..8e5863e900bf1a2cc2f4c18dca0b2e2703f74e42 100644 (file)
@@ -179,22 +179,25 @@ int blkg_conf_prep(struct blkcg *blkcg, const struct blkcg_policy *pol,
 void blkg_conf_finish(struct blkg_conf_ctx *ctx);
 
 
+static inline struct blkcg *css_to_blkcg(struct cgroup_subsys_state *css)
+{
+       return css ? container_of(css, struct blkcg, css) : NULL;
+}
+
 static inline struct blkcg *cgroup_to_blkcg(struct cgroup *cgroup)
 {
-       return container_of(cgroup_subsys_state(cgroup, blkio_subsys_id),
-                           struct blkcg, css);
+       return css_to_blkcg(cgroup_css(cgroup, blkio_subsys_id));
 }
 
 static inline struct blkcg *task_blkcg(struct task_struct *tsk)
 {
-       return container_of(task_subsys_state(tsk, blkio_subsys_id),
-                           struct blkcg, css);
+       return css_to_blkcg(task_css(tsk, blkio_subsys_id));
 }
 
 static inline struct blkcg *bio_blkcg(struct bio *bio)
 {
        if (bio && bio->bi_css)
-               return container_of(bio->bi_css, struct blkcg, css);
+               return css_to_blkcg(bio->bi_css);
        return task_blkcg(current);
 }
 
This page took 0.029456 seconds and 5 git commands to generate.