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)
commite24f1c245fb61b799137b586ea7ac3c6a5e952be
treeca5fda33e39c6a8d62565e4991c78c640f8e4ec7
parent4029eef1be4c869ae4c1bdcdc0010a1f2a5b888f
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