diff options
author | Paolo Valente <paolo.valente@linaro.org> | 2019-01-29 14:06:25 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2019-01-31 22:50:22 +0300 |
commit | 20cd32450bcbec37c6d881b84bdddd8ba047ab01 (patch) | |
tree | 24b89fc7bbb5c7b302c8a75d939e92400a3998b3 /block/blk-mq.h | |
parent | 22cb4e681523b35f1a0eba40c25ddc1b16898801 (diff) | |
download | linux-20cd32450bcbec37c6d881b84bdddd8ba047ab01.tar.xz |
block, bfq: do not consider interactive queues in srt filtering
The speed at which a bfq_queue receives I/O is one of the parameters by
which bfq decides whether the queue is soft real-time (i.e., whether the
queue contains the I/O of a soft real-time application). In particular,
when a bfq_queue remains without outstanding I/O requests, bfq computes
the minimum time instant, named soft_rt_next_start, at which the next
request of the queue may arrive for the queue to be deemed as soft real
time.
Unfortunately this filtering may cause problems with a queue in
interactive weight raising. In fact, such a queue may be conveying the
I/O needed to load a soft real-time application. The latter will
actually exhibit a soft real-time I/O pattern after it finally starts
doing its job. But, if soft_rt_next_start is updated for an interactive
bfq_queue, and the queue has received a lot of service before remaining
with no outstanding request (likely to happen on a fast device), then
soft_rt_next_start is assigned such a high value that, for a very long
time, the queue is prevented from being possibly considered as soft real
time.
This commit removes the updating of soft_rt_next_start for bfq_queues in
interactive weight raising.
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-mq.h')
0 files changed, 0 insertions, 0 deletions