mirror of
https://github.com/torvalds/linux.git
synced 2025-04-09 14:45:27 +00:00
blk-cgroup: Simplify policy files registration
Use one set of files when there is no difference between default and legacy files, similar to regular subsys files registration. No functional change. Signed-off-by: Michal Koutný <mkoutny@suse.com> Acked-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
76f9409f81
commit
4a893bdc18
@ -1768,12 +1768,15 @@ int blkcg_policy_register(struct blkcg_policy *pol)
|
||||
mutex_unlock(&blkcg_pol_mutex);
|
||||
|
||||
/* everything is in place, add intf files for the new policy */
|
||||
if (pol->dfl_cftypes)
|
||||
if (pol->dfl_cftypes == pol->legacy_cftypes) {
|
||||
WARN_ON(cgroup_add_cftypes(&io_cgrp_subsys,
|
||||
pol->dfl_cftypes));
|
||||
} else {
|
||||
WARN_ON(cgroup_add_dfl_cftypes(&io_cgrp_subsys,
|
||||
pol->dfl_cftypes));
|
||||
if (pol->legacy_cftypes)
|
||||
WARN_ON(cgroup_add_legacy_cftypes(&io_cgrp_subsys,
|
||||
pol->legacy_cftypes));
|
||||
}
|
||||
mutex_unlock(&blkcg_pol_register_mutex);
|
||||
return 0;
|
||||
|
||||
|
@ -113,27 +113,18 @@ static void ioprio_free_cpd(struct blkcg_policy_data *cpd)
|
||||
kfree(blkcg);
|
||||
}
|
||||
|
||||
#define IOPRIO_ATTRS \
|
||||
{ \
|
||||
.name = "prio.class", \
|
||||
.seq_show = ioprio_show_prio_policy, \
|
||||
.write = ioprio_set_prio_policy, \
|
||||
}, \
|
||||
{ } /* sentinel */
|
||||
|
||||
/* cgroup v2 attributes */
|
||||
static struct cftype ioprio_files[] = {
|
||||
IOPRIO_ATTRS
|
||||
};
|
||||
|
||||
/* cgroup v1 attributes */
|
||||
static struct cftype ioprio_legacy_files[] = {
|
||||
IOPRIO_ATTRS
|
||||
{
|
||||
.name = "prio.class",
|
||||
.seq_show = ioprio_show_prio_policy,
|
||||
.write = ioprio_set_prio_policy,
|
||||
},
|
||||
{ } /* sentinel */
|
||||
};
|
||||
|
||||
static struct blkcg_policy ioprio_policy = {
|
||||
.dfl_cftypes = ioprio_files,
|
||||
.legacy_cftypes = ioprio_legacy_files,
|
||||
.legacy_cftypes = ioprio_files,
|
||||
|
||||
.cpd_alloc_fn = ioprio_alloc_cpd,
|
||||
.cpd_free_fn = ioprio_free_cpd,
|
||||
|
@ -113,6 +113,7 @@ int cgroup_transfer_tasks(struct cgroup *to, struct cgroup *from);
|
||||
|
||||
int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
|
||||
int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
|
||||
int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts);
|
||||
int cgroup_rm_cftypes(struct cftype *cfts);
|
||||
void cgroup_file_notify(struct cgroup_file *cfile);
|
||||
void cgroup_file_show(struct cgroup_file *cfile, bool show);
|
||||
|
@ -4451,7 +4451,7 @@ int cgroup_rm_cftypes(struct cftype *cfts)
|
||||
* function currently returns 0 as long as @cfts registration is successful
|
||||
* even if some file creation attempts on existing cgroups fail.
|
||||
*/
|
||||
static int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
|
||||
int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts)
|
||||
{
|
||||
int ret;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user