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 12:50:23 -0700 |
commit | 530c4cbb3c62f9e42dbf39279fb346f2d2ab4dbb (patch) | |
tree | aad632d87cc3978218cbad308e0b0bd250025e34 /block/blk-mq-sched.h | |
parent | ac8b0cb415f3aa9162009d39624501d37031533b (diff) | |
download | linux-530c4cbb3c62f9e42dbf39279fb346f2d2ab4dbb.tar.gz |
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 'block/blk-mq-sched.h')
0 files changed, 0 insertions, 0 deletions