Messages in this thread Patch in this message | | | From | Andrea Righi <> | Subject | [PATCH 2/5] blk-cgroup: introduce task_to_blkio_cgroup() | Date | Tue, 22 Feb 2011 18:12:53 +0100 |
| |
Introduce a helper function to retrieve a blkio cgroup from a task.
Signed-off-by: Andrea Righi <arighi@develer.com> --- block/blk-cgroup.c | 7 +++++++ include/linux/blk-cgroup.h | 4 ++++ 2 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c index bf9d354..f283ae1 100644 --- a/block/blk-cgroup.c +++ b/block/blk-cgroup.c @@ -107,6 +107,13 @@ blkio_policy_search_node(const struct blkio_cgroup *blkcg, dev_t dev, return NULL; } +struct blkio_cgroup *task_to_blkio_cgroup(struct task_struct *task) +{ + return container_of(task_subsys_state(task, blkio_subsys_id), + struct blkio_cgroup, css); +} +EXPORT_SYMBOL_GPL(task_to_blkio_cgroup); + struct blkio_cgroup *cgroup_to_blkio_cgroup(struct cgroup *cgroup) { return container_of(cgroup_subsys_state(cgroup, blkio_subsys_id), diff --git a/include/linux/blk-cgroup.h b/include/linux/blk-cgroup.h index 5e48204..41b59db 100644 --- a/include/linux/blk-cgroup.h +++ b/include/linux/blk-cgroup.h @@ -287,6 +287,7 @@ static inline void blkiocg_set_start_empty_time(struct blkio_group *blkg) {} extern struct blkio_cgroup blkio_root_cgroup; extern bool blkio_cgroup_disabled(void); extern struct blkio_cgroup *cgroup_to_blkio_cgroup(struct cgroup *cgroup); +extern struct blkio_cgroup *task_to_blkio_cgroup(struct task_struct *task); extern void blkiocg_add_blkio_group(struct blkio_cgroup *blkcg, struct blkio_group *blkg, void *key, dev_t dev, enum blkio_policy_id plid); @@ -311,6 +312,9 @@ static inline bool blkio_cgroup_disabled(void) { return true; } static inline struct blkio_cgroup * cgroup_to_blkio_cgroup(struct cgroup *cgroup) { return NULL; } +static inline struct blkio_cgroup * +task_to_blkio_cgroup(struct task_struct *task) { return NULL; } + static inline void blkiocg_add_blkio_group(struct blkio_cgroup *blkcg, struct blkio_group *blkg, void *key, dev_t dev, enum blkio_policy_id plid) {} -- 1.7.1
| |