summaryrefslogtreecommitdiff
path: root/block/blk-core.c
diff options
context:
space:
mode:
authorJens Axboe <axboe@kernel.dk>2017-08-09 02:49:47 +0300
committerJens Axboe <axboe@kernel.dk>2017-08-09 22:09:20 +0300
commit0609e0efc5e15195ecf8c6d2f2e890d98760e337 (patch)
tree375a8c090f2b2022de3339bc3960e95b3878de7a /block/blk-core.c
parentd62e26b3ffd28f16ddae85a1babd0303a1a6dfb6 (diff)
downloadlinux-0609e0efc5e15195ecf8c6d2f2e890d98760e337.tar.xz
block: make part_in_flight() take an array of two ints
Instead of returning the count that matches the partition, pass in an array of two ints. Index 0 will be filled with the inflight count for the partition in question, and index 1 will filled with the root inflight count, if the partition passed in is not the root. This is in preparation for being able to calculate both in one go. Reviewed-by: Bart Van Assche <bart.vanassche@wdc.com> Reviewed-by: Omar Sandoval <osandov@fb.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-core.c')
-rw-r--r--block/blk-core.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/block/blk-core.c b/block/blk-core.c
index 8ee954c12e9d..6ad2b8602c1d 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1472,15 +1472,15 @@ static void add_acct_request(struct request_queue *q, struct request *rq,
static void part_round_stats_single(struct request_queue *q, int cpu,
struct hd_struct *part, unsigned long now)
{
- int inflight;
+ int inflight[2];
if (now == part->stamp)
return;
- inflight = part_in_flight(q, part);
- if (inflight) {
+ part_in_flight(q, part, inflight);
+ if (inflight[0]) {
__part_stat_add(cpu, part, time_in_queue,
- inflight * (now - part->stamp));
+ inflight[0] * (now - part->stamp));
__part_stat_add(cpu, part, io_ticks, (now - part->stamp));
}
part->stamp = now;