aboutsummaryrefslogtreecommitdiffstats
path: root/block/cfq-iosched.c
diff options
context:
space:
mode:
Diffstat (limited to 'block/cfq-iosched.c')
-rw-r--r--block/cfq-iosched.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
index 42028e7128a7..5617ae030b15 100644
--- a/block/cfq-iosched.c
+++ b/block/cfq-iosched.c
@@ -955,6 +955,7 @@ cfq_find_alloc_cfqg(struct cfq_data *cfqd, struct cgroup *cgroup, int create)
955 for_each_cfqg_st(cfqg, i, j, st) 955 for_each_cfqg_st(cfqg, i, j, st)
956 *st = CFQ_RB_ROOT; 956 *st = CFQ_RB_ROOT;
957 RB_CLEAR_NODE(&cfqg->rb_node); 957 RB_CLEAR_NODE(&cfqg->rb_node);
958 blkio_group_init(&cfqg->blkg);
958 959
959 /* 960 /*
960 * Take the initial reference that will be released on destroy 961 * Take the initial reference that will be released on destroy
@@ -1865,7 +1866,8 @@ static void cfq_dispatch_insert(struct request_queue *q, struct request *rq)
1865 elv_dispatch_sort(q, rq); 1866 elv_dispatch_sort(q, rq);
1866 1867
1867 cfqd->rq_in_flight[cfq_cfqq_sync(cfqq)]++; 1868 cfqd->rq_in_flight[cfq_cfqq_sync(cfqq)]++;
1868 blkiocg_update_request_dispatch_stats(&cfqq->cfqg->blkg, rq); 1869 blkiocg_update_dispatch_stats(&cfqq->cfqg->blkg, blk_rq_bytes(rq),
1870 rq_data_dir(rq), rq_is_sync(rq));
1869} 1871}
1870 1872
1871/* 1873/*
@@ -3286,7 +3288,9 @@ static void cfq_completed_request(struct request_queue *q, struct request *rq)
3286 WARN_ON(!cfqq->dispatched); 3288 WARN_ON(!cfqq->dispatched);
3287 cfqd->rq_in_driver--; 3289 cfqd->rq_in_driver--;
3288 cfqq->dispatched--; 3290 cfqq->dispatched--;
3289 blkiocg_update_request_completion_stats(&cfqq->cfqg->blkg, rq); 3291 blkiocg_update_completion_stats(&cfqq->cfqg->blkg, rq_start_time_ns(rq),
3292 rq_io_start_time_ns(rq), rq_data_dir(rq),
3293 rq_is_sync(rq));
3290 3294
3291 cfqd->rq_in_flight[cfq_cfqq_sync(cfqq)]--; 3295 cfqd->rq_in_flight[cfq_cfqq_sync(cfqq)]--;
3292 3296