aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2013-01-09 11:05:13 -0500
committerTejun Heo <tj@kernel.org>2013-01-09 11:05:13 -0500
commit689665af4489f779bc82e7869509c9ac11b5a903 (patch)
tree2ae00b3beb2f658987d3e65cf9d08ff24ce916e3
parent810ecfa765f8be20c8d9c468885b3403a2232d2f (diff)
cfq-iosched: separate out cfqg_stats_reset() from cfq_pd_reset_stats()
Separate out cfqg_stats_reset() which takes struct cfqg_stats * from cfq_pd_reset_stats() and move the latter to where other pd methods are defined. cfqg_stats_reset() will be used to implement hierarchical stats. Signed-off-by: Tejun Heo <tj@kernel.org> Acked-by: Vivek Goyal <vgoyal@redhat.com>
-rw-r--r--block/cfq-iosched.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index d43145cc0088..f8b34bbbd372 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -688,11 +688,9 @@ static inline void cfqg_stats_update_completion(struct cfq_group *cfqg,
688 io_start_time - start_time); 688 io_start_time - start_time);
689} 689}
690 690
691static void cfq_pd_reset_stats(struct blkcg_gq *blkg) 691/* @stats = 0 */
692static void cfqg_stats_reset(struct cfqg_stats *stats)
692{ 693{
693 struct cfq_group *cfqg = blkg_to_cfqg(blkg);
694 struct cfqg_stats *stats = &cfqg->stats;
695
696 /* queued stats shouldn't be cleared */ 694 /* queued stats shouldn't be cleared */
697 blkg_rwstat_reset(&stats->service_bytes); 695 blkg_rwstat_reset(&stats->service_bytes);
698 blkg_rwstat_reset(&stats->serviced); 696 blkg_rwstat_reset(&stats->serviced);
@@ -1477,6 +1475,13 @@ static void cfq_pd_init(struct blkcg_gq *blkg)
1477 cfqg->leaf_weight = blkg->blkcg->cfq_leaf_weight; 1475 cfqg->leaf_weight = blkg->blkcg->cfq_leaf_weight;
1478} 1476}
1479 1477
1478static void cfq_pd_reset_stats(struct blkcg_gq *blkg)
1479{
1480 struct cfq_group *cfqg = blkg_to_cfqg(blkg);
1481
1482 cfqg_stats_reset(&cfqg->stats);
1483}
1484
1480/* 1485/*
1481 * Search for the cfq group current task belongs to. request_queue lock must 1486 * Search for the cfq group current task belongs to. request_queue lock must
1482 * be held. 1487 * be held.