]> git.baikalelectronics.ru Git - kernel.git/commit
bfq: Use only idle IO periods for think time calculations
authorJan Kara <jack@suse.cz>
Fri, 5 Jun 2020 14:16:18 +0000 (16:16 +0200)
committerJens Axboe <axboe@kernel.dk>
Wed, 27 Jan 2021 16:16:00 +0000 (09:16 -0700)
commit4b22277743ebb2825b98a2a9201a3359ff78a13f
tree0cea99f26a94f6790e3e6c33cf7c1cab4ff291ec
parenta19129ec7c527b3c9768cb6c962a5026b5d7a33e
bfq: Use only idle IO periods for think time calculations

Currently whenever bfq queue has a request queued we add now -
last_completion_time to the think time statistics. This is however
misleading in case the process is able to submit several requests in
parallel because e.g. if the queue has request completed at time T0 and
then queues new requests at times T1, T2, then we will add T1-T0 and
T2-T0 to think time statistics which just doesn't make any sence (the
queue's think time is penalized by the queue being able to submit more
IO). So add to think time statistics only time intervals when the queue
had no IO pending.

Signed-off-by: Jan Kara <jack@suse.cz>
Acked-by: Paolo Valente <paolo.valente@linaro.org>
[axboe: fix whitespace on empty line]
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/bfq-iosched.c