diff options
author | 2021-06-19 16:09:47 +0200 | |
---|---|---|
committer | 2021-06-21 15:03:41 -0600 | |
commit | efc72524b3a9e4e7bc7c07f756528736409ec1b7 (patch) | |
tree | bfa73331f41976c68ed3eb811060669a539ec76d /tools/perf/scripts/python/export-to-postgresql.py | |
parent | block, bfq: avoid delayed merge of async queues (diff) | |
download | wireguard-linux-efc72524b3a9e4e7bc7c07f756528736409ec1b7.tar.xz wireguard-linux-efc72524b3a9e4e7bc7c07f756528736409ec1b7.zip |
block, bfq: check waker only for queues with no in-flight I/O
Consider two bfq_queues, say Q1 and Q2, with Q2 empty. If a request of
Q1 gets completed shortly before a new request arrives for Q2, then
BFQ flags Q1 as a candidate waker for Q2. Yet, the arrival of this new
request may have a different cause, in the following case. If also Q2
has requests in flight while waiting for the arrival of a new request,
then the completion of its own requests may be the actual cause of the
awakening of the process that sends I/O to Q2. So Q1 may be flagged
wrongly as a candidate waker.
This commit avoids this deceptive flagging, by disabling
candidate-waker flagging for Q2, if Q2 has in-flight I/O.
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Link: https://lore.kernel.org/r/20210619140948.98712-7-paolo.valente@linaro.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions