Re: [PATCH RFC 01/14] block, bfq: introduce the BFQ-v0 I/O scheduler as an extra scheduler

From: Jens Axboe
Date: Sun Mar 05 2017 - 10:26:03 EST


On 03/04/2017 09:01 AM, Paolo Valente wrote:
> We tag as v0 the version of BFQ containing only BFQ's engine plus
> hierarchical support. BFQ's engine is introduced by this commit, while
> hierarchical support is added by next commit. We use the v0 tag to
> distinguish this minimal version of BFQ from the versions containing
> also the features and the improvements added by next commits. BFQ-v0
> coincides with the version of BFQ submitted a few years ago [1], apart
> from the introduction of preemption, described below.
>
> BFQ is a proportional-share I/O scheduler, whose general structure,
> plus a lot of code, are borrowed from CFQ.

I'll take a closer look at this in the coming week. But one quick
comment - don't default to BFQ. Both because it might not be fully
stable yet, and also because the performance limitation of it is
quite severe. Whereas deadline doesn't really hurt single queue
flash at all, BFQ will.

Generally, I think that sort of logic should go into a udev rule. If
a device is rotational it should default to BFQ once the dust has
settled.

--
Jens Axboe