Messages in this thread Patch in this message | | | Subject | Re: [PATCH] block: make the io_ticks counter more accurate | From | Wen Yang <> | Date | Fri, 20 Dec 2019 14:16:38 +0800 |
| |
On 2019/12/18 9:28 上午, Jens Axboe wrote: > On 12/17/19 7:28 AM, Wen Yang wrote: >> Instead of the jiffies, we should update the io_ticks counter >> with the passed in parameter 'now'. > > But they are not the same clock source... >
Hi Jens, Thanks for your comments. We plan to change it to the following version, please kindly help with some suggestions. Thank you.
diff --git a/block/blk-core.c b/block/blk-core.c index 379f6f5..da7de9f 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -1365,7 +1365,7 @@ void blk_account_io_done(struct request *req, u64 now) part_stat_lock(); part = req->part;
- update_io_ticks(part, jiffies); + update_io_ticks(part, nsecs_to_jiffies(now)); part_stat_inc(part, ios[sgrp]); part_stat_add(part, nsecs[sgrp], now - req->start_time_ns); part_stat_add(part, time_in_queue, nsecs_to_jiffies64(now - req->start_time_ns)); @@ -1407,7 +1407,7 @@ void blk_account_io_start(struct request *rq, bool new_io) rq->part = part; }
- update_io_ticks(part, jiffies); + update_io_ticks(part, nsecs_to_jiffies(ktime_get_ns()));
part_stat_unlock(); } -- 1.8.3.1
-- Best Regards, Wen
| |