diff options
author | Josef Bacik <jbacik@fb.com> | 2018-07-03 11:14:52 -0400 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2018-07-09 11:07:54 -0400 |
commit | 903d23f0a354f226fa78f1c1c34b60aaf992e812 (patch) | |
tree | c74a26a70450653725e8d5bf25a77eb56586f245 /include/linux/blk-cgroup.h | |
parent | c7c98fd37653955d3a17dd4f1fa67aba070096a9 (diff) |
blk-cgroup: allow controllers to output their own stats
blk-iolatency has a few stats that it would like to print out, and
instead of adding a bunch of crap to the generic code just provide a
helper so that controllers can add stuff to the stat line if they want
to.
Hide it behind a boot option since it changes the output of io.stat from
normal, and these stats are only interesting to developers.
Signed-off-by: Josef Bacik <jbacik@fb.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/blk-cgroup.h')
-rw-r--r-- | include/linux/blk-cgroup.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/blk-cgroup.h b/include/linux/blk-cgroup.h index 69aa71dc0c04..b41292726c0f 100644 --- a/include/linux/blk-cgroup.h +++ b/include/linux/blk-cgroup.h | |||
@@ -148,6 +148,8 @@ typedef void (blkcg_pol_online_pd_fn)(struct blkg_policy_data *pd); | |||
148 | typedef void (blkcg_pol_offline_pd_fn)(struct blkg_policy_data *pd); | 148 | typedef void (blkcg_pol_offline_pd_fn)(struct blkg_policy_data *pd); |
149 | typedef void (blkcg_pol_free_pd_fn)(struct blkg_policy_data *pd); | 149 | typedef void (blkcg_pol_free_pd_fn)(struct blkg_policy_data *pd); |
150 | typedef void (blkcg_pol_reset_pd_stats_fn)(struct blkg_policy_data *pd); | 150 | typedef void (blkcg_pol_reset_pd_stats_fn)(struct blkg_policy_data *pd); |
151 | typedef size_t (blkcg_pol_stat_pd_fn)(struct blkg_policy_data *pd, char *buf, | ||
152 | size_t size); | ||
151 | 153 | ||
152 | struct blkcg_policy { | 154 | struct blkcg_policy { |
153 | int plid; | 155 | int plid; |
@@ -167,6 +169,7 @@ struct blkcg_policy { | |||
167 | blkcg_pol_offline_pd_fn *pd_offline_fn; | 169 | blkcg_pol_offline_pd_fn *pd_offline_fn; |
168 | blkcg_pol_free_pd_fn *pd_free_fn; | 170 | blkcg_pol_free_pd_fn *pd_free_fn; |
169 | blkcg_pol_reset_pd_stats_fn *pd_reset_stats_fn; | 171 | blkcg_pol_reset_pd_stats_fn *pd_reset_stats_fn; |
172 | blkcg_pol_stat_pd_fn *pd_stat_fn; | ||
170 | }; | 173 | }; |
171 | 174 | ||
172 | extern struct blkcg blkcg_root; | 175 | extern struct blkcg blkcg_root; |