diff options
author | Christoph Hellwig <hch@lst.de> | 2020-05-13 12:49:34 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-05-19 09:35:24 -0600 |
commit | 76268f3ac0a69e76270af5f67ab239ccd796ae56 (patch) | |
tree | cdb87416f6b127b8dbddd9e4cf4727af5e0463ff /block/blk-core.c | |
parent | b2f609e191edc9c7a9dec603318461eeb23f8a6b (diff) |
block: don't call part_{inc,dec}_in_flight for blk-mq devices
part_inc_in_flight and part_dec_in_flight are no-ops for blk-mq queues,
so remove the calls in purely blk-mq callers.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-core.c')
-rw-r--r-- | block/blk-core.c | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/block/blk-core.c b/block/blk-core.c index d8df56e9bffb..77e57c2e8d60 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -1412,7 +1412,6 @@ void blk_account_io_done(struct request *req, u64 now) update_io_ticks(part, jiffies, true); part_stat_inc(part, ios[sgrp]); part_stat_add(part, nsecs[sgrp], now - req->start_time_ns); - part_dec_in_flight(req->q, part, rq_data_dir(req)); hd_struct_put(part); part_stat_unlock(); @@ -1421,25 +1420,15 @@ void blk_account_io_done(struct request *req, u64 now) void blk_account_io_start(struct request *rq, bool new_io) { - struct hd_struct *part; - int rw = rq_data_dir(rq); - if (!blk_do_io_stat(rq)) return; part_stat_lock(); - - if (!new_io) { - part = rq->part; - part_stat_inc(part, merges[rw]); - } else { - part = disk_map_sector_rcu(rq->rq_disk, blk_rq_pos(rq)); - part_inc_in_flight(rq->q, part, rw); - rq->part = part; - } - - update_io_ticks(part, jiffies, false); - + if (!new_io) + part_stat_inc(rq->part, merges[rq_data_dir(rq)]); + else + rq->part = disk_map_sector_rcu(rq->rq_disk, blk_rq_pos(rq)); + update_io_ticks(rq->part, jiffies, false); part_stat_unlock(); } |