diff options
author | Paolo Valente <paolo.valente@linaro.org> | 2019-01-29 12:06:32 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2019-01-31 20:50:23 +0100 |
commit | 530c4cbb3c62f9e42dbf39279fb346f2d2ab4dbb (patch) | |
tree | aad632d87cc3978218cbad308e0b0bd250025e34 /net/batman-adv | |
parent | block, bfq: do not plug I/O of in-service queue when harmful (diff) | |
download | linux-530c4cbb3c62f9e42dbf39279fb346f2d2ab4dbb.tar.xz linux-530c4cbb3c62f9e42dbf39279fb346f2d2ab4dbb.zip |
block, bfq: unconditionally plug I/O in asymmetric scenarios
bfq detects the creation of multiple bfq_queues shortly after each
other, namely a burst of queue creations in the terminology used in the
code. If the burst is large, then no queue in the burst is granted
- either I/O-dispatch plugging when the queue remains temporarily idle
while in service;
- or weight raising, because it causes even longer plugging.
In fact, such a plugging tends to lower throughput, while these bursts
are typically due to applications or services that spawn multiple
processes, to reach a common goal as soon as possible. Examples are a
"git grep" or the booting of a system.
Unfortunately, disabling plugging may cause a loss of service guarantees
in asymmetric scenarios, i.e., if queue weights are differentiated or if
more than one group is active.
This commit addresses this issue by no longer disabling I/O-dispatch
plugging for queues in large bursts.
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'net/batman-adv')
0 files changed, 0 insertions, 0 deletions