mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
blkcg: make blkcg_policy methods take a pointer to blkcg_policy_data
The newly added ->pd_alloc_fn() and ->pd_free_fn() deal with pd (blkg_policy_data) while the older ones use blkg (blkcg_gq). As using blkg doesn't make sense for ->pd_alloc_fn() and after allocation pd can always be mapped to blkg and given that these are policy-specific methods, it makes sense to converge on pd. This patch makes all methods deal with pd instead of blkg. Most conversions are trivial. In blk-cgroup.c, a couple method invocation sites now test whether pd exists instead of policy state for consistency. This shouldn't cause any behavioral differences. Signed-off-by: Tejun Heo <[email protected]> Cc: Vivek Goyal <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
This commit is contained in:
parent
b2ce2643cc
commit
a9520cd6f2
4 changed files with 26 additions and 27 deletions
|
|
@ -377,9 +377,10 @@ static struct blkg_policy_data *throtl_pd_alloc(gfp_t gfp, int node)
|
|||
return &tg->pd;
|
||||
}
|
||||
|
||||
static void throtl_pd_init(struct blkcg_gq *blkg)
|
||||
static void throtl_pd_init(struct blkg_policy_data *pd)
|
||||
{
|
||||
struct throtl_grp *tg = blkg_to_tg(blkg);
|
||||
struct throtl_grp *tg = pd_to_tg(pd);
|
||||
struct blkcg_gq *blkg = tg_to_blkg(tg);
|
||||
struct throtl_data *td = blkg->q->td;
|
||||
struct throtl_service_queue *sq = &tg->service_queue;
|
||||
|
||||
|
|
@ -417,13 +418,13 @@ static void tg_update_has_rules(struct throtl_grp *tg)
|
|||
(tg->bps[rw] != -1 || tg->iops[rw] != -1);
|
||||
}
|
||||
|
||||
static void throtl_pd_online(struct blkcg_gq *blkg)
|
||||
static void throtl_pd_online(struct blkg_policy_data *pd)
|
||||
{
|
||||
/*
|
||||
* We don't want new groups to escape the limits of its ancestors.
|
||||
* Update has_rules[] after a new group is brought online.
|
||||
*/
|
||||
tg_update_has_rules(blkg_to_tg(blkg));
|
||||
tg_update_has_rules(pd_to_tg(pd));
|
||||
}
|
||||
|
||||
static void throtl_pd_free(struct blkg_policy_data *pd)
|
||||
|
|
@ -435,9 +436,9 @@ static void throtl_pd_free(struct blkg_policy_data *pd)
|
|||
kfree(tg);
|
||||
}
|
||||
|
||||
static void throtl_pd_reset_stats(struct blkcg_gq *blkg)
|
||||
static void throtl_pd_reset_stats(struct blkg_policy_data *pd)
|
||||
{
|
||||
struct throtl_grp *tg = blkg_to_tg(blkg);
|
||||
struct throtl_grp *tg = pd_to_tg(pd);
|
||||
int cpu;
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue