Skip to content

Commit

Permalink
cgroup: s/cgroup_subsys_state/cgroup_css/ s/task_subsys_state/task_css/
Browse files Browse the repository at this point in the history
The names of the two struct cgroup_subsys_state accessors -
cgroup_subsys_state() and task_subsys_state() - are somewhat awkward.
The former clashes with the type name and the latter doesn't even
indicate it's somehow related to cgroup.

We're about to revamp large portion of cgroup API, so, let's rename
them so that they're less awkward.  Most per-controller usages of the
accessors are localized in accessor wrappers and given the amount of
scheduled changes, this isn't gonna add any noticeable headache.

Rename cgroup_subsys_state() to cgroup_css() and task_subsys_state()
to task_css().  This patch is pure rename.

Signed-off-by: Tejun Heo <[email protected]>
Acked-by: Li Zefan <[email protected]>
  • Loading branch information
htejun committed Aug 9, 2013
1 parent 61584e3 commit 8af01f5
Show file tree
Hide file tree
Showing 18 changed files with 52 additions and 49 deletions.
5 changes: 2 additions & 3 deletions block/blk-cgroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -181,14 +181,13 @@ void blkg_conf_finish(struct blkg_conf_ctx *ctx);

static inline struct blkcg *cgroup_to_blkcg(struct cgroup *cgroup)
{
return container_of(cgroup_subsys_state(cgroup, blkio_subsys_id),
return container_of(cgroup_css(cgroup, blkio_subsys_id),
struct blkcg, css);
}

static inline struct blkcg *task_blkcg(struct task_struct *tsk)
{
return container_of(task_subsys_state(tsk, blkio_subsys_id),
struct blkcg, css);
return container_of(task_css(tsk, blkio_subsys_id), struct blkcg, css);
}

static inline struct blkcg *bio_blkcg(struct bio *bio)
Expand Down
2 changes: 1 addition & 1 deletion fs/bio.c
Original file line number Diff line number Diff line change
Expand Up @@ -1946,7 +1946,7 @@ int bio_associate_current(struct bio *bio)

/* associate blkcg if exists */
rcu_read_lock();
css = task_subsys_state(current, blkio_subsys_id);
css = task_css(current, blkio_subsys_id);
if (css && css_tryget(css))
bio->bi_css = css;
rcu_read_unlock();
Expand Down
31 changes: 19 additions & 12 deletions include/linux/cgroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -647,8 +647,15 @@ struct cgroup_subsys {
#undef IS_SUBSYS_ENABLED
#undef SUBSYS

static inline struct cgroup_subsys_state *cgroup_subsys_state(
struct cgroup *cgrp, int subsys_id)
/**
* cgroup_css - obtain a cgroup's css for the specified subsystem
* @cgrp: the cgroup of interest
* @subsys_id: the subsystem of interest
*
* Return @cgrp's css (cgroup_subsys_state) associated with @subsys_id.
*/
static inline struct cgroup_subsys_state *cgroup_css(struct cgroup *cgrp,
int subsys_id)
{
return cgrp->subsys[subsys_id];
}
Expand Down Expand Up @@ -678,15 +685,15 @@ extern struct mutex cgroup_mutex;
#endif

/**
* task_subsys_state_check - obtain css for (task, subsys) w/ extra access conds
* task_css_check - obtain css for (task, subsys) w/ extra access conds
* @task: the target task
* @subsys_id: the target subsystem ID
* @__c: extra condition expression to be passed to rcu_dereference_check()
*
* Return the cgroup_subsys_state for the (@task, @subsys_id) pair. The
* synchronization rules are the same as task_css_set_check().
*/
#define task_subsys_state_check(task, subsys_id, __c) \
#define task_css_check(task, subsys_id, __c) \
task_css_set_check((task), (__c))->subsys[(subsys_id)]

/**
Expand All @@ -701,22 +708,22 @@ static inline struct css_set *task_css_set(struct task_struct *task)
}

/**
* task_subsys_state - obtain css for (task, subsys)
* task_css - obtain css for (task, subsys)
* @task: the target task
* @subsys_id: the target subsystem ID
*
* See task_subsys_state_check().
* See task_css_check().
*/
static inline struct cgroup_subsys_state *
task_subsys_state(struct task_struct *task, int subsys_id)
static inline struct cgroup_subsys_state *task_css(struct task_struct *task,
int subsys_id)
{
return task_subsys_state_check(task, subsys_id, false);
return task_css_check(task, subsys_id, false);
}

static inline struct cgroup* task_cgroup(struct task_struct *task,
int subsys_id)
static inline struct cgroup *task_cgroup(struct task_struct *task,
int subsys_id)
{
return task_subsys_state(task, subsys_id)->cgroup;
return task_css(task, subsys_id)->cgroup;
}

/**
Expand Down
4 changes: 2 additions & 2 deletions include/net/cls_cgroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ static inline u32 task_cls_classid(struct task_struct *p)
return 0;

rcu_read_lock();
classid = container_of(task_subsys_state(p, net_cls_subsys_id),
classid = container_of(task_css(p, net_cls_subsys_id),
struct cgroup_cls_state, css)->classid;
rcu_read_unlock();

Expand All @@ -51,7 +51,7 @@ static inline u32 task_cls_classid(struct task_struct *p)
return 0;

rcu_read_lock();
css = task_subsys_state(p, net_cls_subsys_id);
css = task_css(p, net_cls_subsys_id);
if (css)
classid = container_of(css,
struct cgroup_cls_state, css)->classid;
Expand Down
4 changes: 2 additions & 2 deletions include/net/netprio_cgroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ static inline u32 task_netprioidx(struct task_struct *p)
u32 idx;

rcu_read_lock();
css = task_subsys_state(p, net_prio_subsys_id);
css = task_css(p, net_prio_subsys_id);
idx = css->cgroup->id;
rcu_read_unlock();
return idx;
Expand All @@ -53,7 +53,7 @@ static inline u32 task_netprioidx(struct task_struct *p)
u32 idx = 0;

rcu_read_lock();
css = task_subsys_state(p, net_prio_subsys_id);
css = task_css(p, net_prio_subsys_id);
if (css)
idx = css->cgroup->id;
rcu_read_unlock();
Expand Down
2 changes: 1 addition & 1 deletion kernel/cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
*/
#ifdef CONFIG_PROVE_RCU
DEFINE_MUTEX(cgroup_mutex);
EXPORT_SYMBOL_GPL(cgroup_mutex); /* only for task_subsys_state_check() */
EXPORT_SYMBOL_GPL(cgroup_mutex); /* only for lockdep */
#else
static DEFINE_MUTEX(cgroup_mutex);
#endif
Expand Down
4 changes: 2 additions & 2 deletions kernel/cgroup_freezer.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,13 @@ struct freezer {

static inline struct freezer *cgroup_freezer(struct cgroup *cgroup)
{
return container_of(cgroup_subsys_state(cgroup, freezer_subsys_id),
return container_of(cgroup_css(cgroup, freezer_subsys_id),
struct freezer, css);
}

static inline struct freezer *task_freezer(struct task_struct *task)
{
return container_of(task_subsys_state(task, freezer_subsys_id),
return container_of(task_css(task, freezer_subsys_id),
struct freezer, css);
}

Expand Down
6 changes: 3 additions & 3 deletions kernel/cpuset.c
Original file line number Diff line number Diff line change
Expand Up @@ -117,14 +117,14 @@ struct cpuset {
/* Retrieve the cpuset for a cgroup */
static inline struct cpuset *cgroup_cs(struct cgroup *cgrp)
{
return container_of(cgroup_subsys_state(cgrp, cpuset_subsys_id),
return container_of(cgroup_css(cgrp, cpuset_subsys_id),
struct cpuset, css);
}

/* Retrieve the cpuset for a task */
static inline struct cpuset *task_cs(struct task_struct *task)
{
return container_of(task_subsys_state(task, cpuset_subsys_id),
return container_of(task_css(task, cpuset_subsys_id),
struct cpuset, css);
}

Expand Down Expand Up @@ -2724,7 +2724,7 @@ int proc_cpuset_show(struct seq_file *m, void *unused_v)
goto out_free;

rcu_read_lock();
css = task_subsys_state(tsk, cpuset_subsys_id);
css = task_css(tsk, cpuset_subsys_id);
retval = cgroup_path(css->cgroup, buf, PAGE_SIZE);
rcu_read_unlock();
if (retval < 0)
Expand Down
6 changes: 3 additions & 3 deletions kernel/events/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -340,8 +340,8 @@ struct perf_cgroup {
static inline struct perf_cgroup *
perf_cgroup_from_task(struct task_struct *task)
{
return container_of(task_subsys_state(task, perf_subsys_id),
struct perf_cgroup, css);
return container_of(task_css(task, perf_subsys_id),
struct perf_cgroup, css);
}

static inline bool
Expand Down Expand Up @@ -7798,7 +7798,7 @@ static struct cgroup_subsys_state *perf_cgroup_css_alloc(struct cgroup *cont)
static void perf_cgroup_css_free(struct cgroup *cont)
{
struct perf_cgroup *jc;
jc = container_of(cgroup_subsys_state(cont, perf_subsys_id),
jc = container_of(cgroup_css(cont, perf_subsys_id),
struct perf_cgroup, css);
free_percpu(jc->info);
kfree(jc);
Expand Down
4 changes: 2 additions & 2 deletions kernel/sched/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -6761,7 +6761,7 @@ void sched_move_task(struct task_struct *tsk)
if (unlikely(running))
tsk->sched_class->put_prev_task(rq, tsk);

tg = container_of(task_subsys_state_check(tsk, cpu_cgroup_subsys_id,
tg = container_of(task_css_check(tsk, cpu_cgroup_subsys_id,
lockdep_is_held(&tsk->sighand->siglock)),
struct task_group, css);
tg = autogroup_task_group(tsk, tg);
Expand Down Expand Up @@ -7086,7 +7086,7 @@ int sched_rt_handler(struct ctl_table *table, int write,
/* return corresponding task_group object of a cgroup */
static inline struct task_group *cgroup_tg(struct cgroup *cgrp)
{
return container_of(cgroup_subsys_state(cgrp, cpu_cgroup_subsys_id),
return container_of(cgroup_css(cgrp, cpu_cgroup_subsys_id),
struct task_group, css);
}

Expand Down
4 changes: 2 additions & 2 deletions kernel/sched/cpuacct.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,14 @@ struct cpuacct {
/* return cpu accounting group corresponding to this container */
static inline struct cpuacct *cgroup_ca(struct cgroup *cgrp)
{
return container_of(cgroup_subsys_state(cgrp, cpuacct_subsys_id),
return container_of(cgroup_css(cgrp, cpuacct_subsys_id),
struct cpuacct, css);
}

/* return cpu accounting group to which this task belongs */
static inline struct cpuacct *task_ca(struct task_struct *tsk)
{
return container_of(task_subsys_state(tsk, cpuacct_subsys_id),
return container_of(task_css(tsk, cpuacct_subsys_id),
struct cpuacct, css);
}

Expand Down
6 changes: 3 additions & 3 deletions kernel/sched/sched.h
Original file line number Diff line number Diff line change
Expand Up @@ -665,9 +665,9 @@ extern int group_balance_cpu(struct sched_group *sg);
/*
* Return the group to which this tasks belongs.
*
* We cannot use task_subsys_state() and friends because the cgroup
* subsystem changes that value before the cgroup_subsys::attach() method
* is called, therefore we cannot pin it and might observe the wrong value.
* We cannot use task_css() and friends because the cgroup subsystem
* changes that value before the cgroup_subsys::attach() method is called,
* therefore we cannot pin it and might observe the wrong value.
*
* The same is true for autogroup's p->signal->autogroup->tg, the autogroup
* core changes this before calling sched_move_task().
Expand Down
6 changes: 2 additions & 4 deletions mm/hugetlb_cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,13 @@ struct hugetlb_cgroup *hugetlb_cgroup_from_css(struct cgroup_subsys_state *s)
static inline
struct hugetlb_cgroup *hugetlb_cgroup_from_cgroup(struct cgroup *cgroup)
{
return hugetlb_cgroup_from_css(cgroup_subsys_state(cgroup,
hugetlb_subsys_id));
return hugetlb_cgroup_from_css(cgroup_css(cgroup, hugetlb_subsys_id));
}

static inline
struct hugetlb_cgroup *hugetlb_cgroup_from_task(struct task_struct *task)
{
return hugetlb_cgroup_from_css(task_subsys_state(task,
hugetlb_subsys_id));
return hugetlb_cgroup_from_css(task_css(task, hugetlb_subsys_id));
}

static inline bool hugetlb_cgroup_is_root(struct hugetlb_cgroup *h_cg)
Expand Down
5 changes: 2 additions & 3 deletions mm/memcontrol.c
Original file line number Diff line number Diff line change
Expand Up @@ -1037,8 +1037,7 @@ static void memcg_check_events(struct mem_cgroup *memcg, struct page *page)

struct mem_cgroup *mem_cgroup_from_cont(struct cgroup *cont)
{
return mem_cgroup_from_css(
cgroup_subsys_state(cont, mem_cgroup_subsys_id));
return mem_cgroup_from_css(cgroup_css(cont, mem_cgroup_subsys_id));
}

struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p)
Expand All @@ -1051,7 +1050,7 @@ struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p)
if (unlikely(!p))
return NULL;

return mem_cgroup_from_css(task_subsys_state(p, mem_cgroup_subsys_id));
return mem_cgroup_from_css(task_css(p, mem_cgroup_subsys_id));
}

struct mem_cgroup *try_get_mem_cgroup_from_mm(struct mm_struct *mm)
Expand Down
2 changes: 1 addition & 1 deletion mm/vmpressure.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ static struct vmpressure *work_to_vmpressure(struct work_struct *work)

static struct vmpressure *cg_to_vmpressure(struct cgroup *cg)
{
return css_to_vmpressure(cgroup_subsys_state(cg, mem_cgroup_subsys_id));
return css_to_vmpressure(cgroup_css(cg, mem_cgroup_subsys_id));
}

static struct vmpressure *vmpressure_parent(struct vmpressure *vmpr)
Expand Down
2 changes: 1 addition & 1 deletion net/core/netprio_cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@

static inline struct cgroup_netprio_state *cgrp_netprio_state(struct cgroup *cgrp)
{
return container_of(cgroup_subsys_state(cgrp, net_prio_subsys_id),
return container_of(cgroup_css(cgrp, net_prio_subsys_id),
struct cgroup_netprio_state, css);
}

Expand Down
4 changes: 2 additions & 2 deletions net/sched/cls_cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@

static inline struct cgroup_cls_state *cgrp_cls_state(struct cgroup *cgrp)
{
return container_of(cgroup_subsys_state(cgrp, net_cls_subsys_id),
return container_of(cgroup_css(cgrp, net_cls_subsys_id),
struct cgroup_cls_state, css);
}

static inline struct cgroup_cls_state *task_cls_state(struct task_struct *p)
{
return container_of(task_subsys_state(p, net_cls_subsys_id),
return container_of(task_css(p, net_cls_subsys_id),
struct cgroup_cls_state, css);
}

Expand Down
4 changes: 2 additions & 2 deletions security/device_cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,12 @@ static inline struct dev_cgroup *css_to_devcgroup(struct cgroup_subsys_state *s)

static inline struct dev_cgroup *cgroup_to_devcgroup(struct cgroup *cgroup)
{
return css_to_devcgroup(cgroup_subsys_state(cgroup, devices_subsys_id));
return css_to_devcgroup(cgroup_css(cgroup, devices_subsys_id));
}

static inline struct dev_cgroup *task_devcgroup(struct task_struct *task)
{
return css_to_devcgroup(task_subsys_state(task, devices_subsys_id));
return css_to_devcgroup(task_css(task, devices_subsys_id));
}

struct cgroup_subsys devices_subsys;
Expand Down

0 comments on commit 8af01f5

Please sign in to comment.