mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
cgroup: pass around cgroup_subsys_state instead of cgroup in file methods
cgroup is currently in the process of transitioning to using struct cgroup_subsys_state * as the primary handle instead of struct cgroup. Please see the previous commit which converts the subsystem methods for rationale. This patch converts all cftype file operations to take @css instead of @cgroup. cftypes for the cgroup core files don't have their subsytem pointer set. These will automatically use the dummy_css added by the previous patch and can be converted the same way. Most subsystem conversions are straight forwards but there are some interesting ones. * freezer: update_if_frozen() is also converted to take @css instead of @cgroup for consistency. This will make the code look simpler too once iterators are converted to use css. * memory/vmpressure: mem_cgroup_from_css() needs to be exported to vmpressure while mem_cgroup_from_cont() can be made static. Updated accordingly. * cpu: cgroup_tg() doesn't have any user left. Removed. * cpuacct: cgroup_ca() doesn't have any user left. Removed. * hugetlb: hugetlb_cgroup_form_cgroup() doesn't have any user left. Removed. * net_cls: cgrp_cls_state() doesn't have any user left. Removed. Signed-off-by: Tejun Heo <[email protected]> Acked-by: Li Zefan <[email protected]> Acked-by: Michal Hocko <[email protected]> Acked-by: Vivek Goyal <[email protected]> Acked-by: Aristeu Rozanski <[email protected]> Acked-by: Daniel Wagner <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Johannes Weiner <[email protected]> Cc: Balbir Singh <[email protected]> Cc: Matt Helsley <[email protected]> Cc: Jens Axboe <[email protected]> Cc: Steven Rostedt <[email protected]>
This commit is contained in:
parent
67f4c36f83
commit
182446d087
17 changed files with 322 additions and 328 deletions
|
|
@ -1293,10 +1293,10 @@ static u64 tg_prfill_cpu_rwstat(struct seq_file *sf,
|
|||
return __blkg_prfill_rwstat(sf, pd, &rwstat);
|
||||
}
|
||||
|
||||
static int tg_print_cpu_rwstat(struct cgroup *cgrp, struct cftype *cft,
|
||||
struct seq_file *sf)
|
||||
static int tg_print_cpu_rwstat(struct cgroup_subsys_state *css,
|
||||
struct cftype *cft, struct seq_file *sf)
|
||||
{
|
||||
struct blkcg *blkcg = cgroup_to_blkcg(cgrp);
|
||||
struct blkcg *blkcg = css_to_blkcg(css);
|
||||
|
||||
blkcg_print_blkgs(sf, blkcg, tg_prfill_cpu_rwstat, &blkcg_policy_throtl,
|
||||
cft->private, true);
|
||||
|
|
@ -1325,26 +1325,26 @@ static u64 tg_prfill_conf_uint(struct seq_file *sf, struct blkg_policy_data *pd,
|
|||
return __blkg_prfill_u64(sf, pd, v);
|
||||
}
|
||||
|
||||
static int tg_print_conf_u64(struct cgroup *cgrp, struct cftype *cft,
|
||||
struct seq_file *sf)
|
||||
static int tg_print_conf_u64(struct cgroup_subsys_state *css,
|
||||
struct cftype *cft, struct seq_file *sf)
|
||||
{
|
||||
blkcg_print_blkgs(sf, cgroup_to_blkcg(cgrp), tg_prfill_conf_u64,
|
||||
blkcg_print_blkgs(sf, css_to_blkcg(css), tg_prfill_conf_u64,
|
||||
&blkcg_policy_throtl, cft->private, false);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tg_print_conf_uint(struct cgroup *cgrp, struct cftype *cft,
|
||||
struct seq_file *sf)
|
||||
static int tg_print_conf_uint(struct cgroup_subsys_state *css,
|
||||
struct cftype *cft, struct seq_file *sf)
|
||||
{
|
||||
blkcg_print_blkgs(sf, cgroup_to_blkcg(cgrp), tg_prfill_conf_uint,
|
||||
blkcg_print_blkgs(sf, css_to_blkcg(css), tg_prfill_conf_uint,
|
||||
&blkcg_policy_throtl, cft->private, false);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tg_set_conf(struct cgroup *cgrp, struct cftype *cft, const char *buf,
|
||||
bool is_u64)
|
||||
static int tg_set_conf(struct cgroup_subsys_state *css, struct cftype *cft,
|
||||
const char *buf, bool is_u64)
|
||||
{
|
||||
struct blkcg *blkcg = cgroup_to_blkcg(cgrp);
|
||||
struct blkcg *blkcg = css_to_blkcg(css);
|
||||
struct blkg_conf_ctx ctx;
|
||||
struct throtl_grp *tg;
|
||||
struct throtl_service_queue *sq;
|
||||
|
|
@ -1403,16 +1403,16 @@ static int tg_set_conf(struct cgroup *cgrp, struct cftype *cft, const char *buf,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int tg_set_conf_u64(struct cgroup *cgrp, struct cftype *cft,
|
||||
static int tg_set_conf_u64(struct cgroup_subsys_state *css, struct cftype *cft,
|
||||
const char *buf)
|
||||
{
|
||||
return tg_set_conf(cgrp, cft, buf, true);
|
||||
return tg_set_conf(css, cft, buf, true);
|
||||
}
|
||||
|
||||
static int tg_set_conf_uint(struct cgroup *cgrp, struct cftype *cft,
|
||||
static int tg_set_conf_uint(struct cgroup_subsys_state *css, struct cftype *cft,
|
||||
const char *buf)
|
||||
{
|
||||
return tg_set_conf(cgrp, cft, buf, false);
|
||||
return tg_set_conf(css, cft, buf, false);
|
||||
}
|
||||
|
||||
static struct cftype throtl_files[] = {
|
||||
|
|
|
|||
Loading…
Reference in a new issue