]> git.baikalelectronics.ru Git - kernel.git/commit
block, bfq: remove slow-system class
authorPaolo Valente <paolo.valente@linaro.org>
Thu, 31 May 2018 14:45:06 +0000 (16:45 +0200)
committerJens Axboe <axboe@kernel.dk>
Thu, 31 May 2018 14:54:38 +0000 (08:54 -0600)
commit3fe1b247126d73e4524ab4aed8e4e54a01103406
treeca5fda33e39c6a8d62565e4991c78c640f8e4ec7
parentbed367a89ff6646d311bb405f5df15d94607ff67
block, bfq: remove slow-system class

BFQ computes the duration of weight raising for interactive
applications automatically, using some reference parameters. In
particular, BFQ uses the best durations (see comments in the code for
how these durations have been assessed) for two classes of systems:
slow and fast ones. Examples of slow systems are old phones or systems
using micro HDDs. Fast systems are all the remaining ones. Using these
parameters, BFQ computes the actual duration of the weight raising,
for the system at hand, as a function of the relative speed of the
system w.r.t. the speed of a reference system, belonging to the same
class of systems as the system at hand.

This slow vs fast differentiation proved to be useful in the past, but
happens to have little meaning with current hardware. Even worse, it
does cause problems in virtual systems, where the speed of the system
can vary frequently, and so widely to just confuse the class-detection
mechanism, and, as we have verified experimentally, to cause BFQ to
compute non-sensical weight-raising durations.

This commit addresses this issue by removing the slow class and the
class-detection mechanism.

Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/bfq-iosched.c
block/bfq-iosched.h