On 2016-03-11 06:16, Christoph Hellwig wrote:
On Fri, Mar 04, 2016 at 01:10:31PM -0500, Austin S. Hemmelgarn wrote:
1. This all started long before blk-mq hit mainline.
Whoe cares? :)
It wasn't intended as an argument for this continuing to be developed
outside of blk-mq, but as an explanation of why the code exists as it
does right now.
2. There's still a decent amount of block drivers that don't support blk-mq.
Last time I looked (around the time 4.4 came out), I saw the following that
either obviously don't support it, or are ambiguous as to whether they
support it or not. Here's a list of just the ones I know are being used on
existing systems running relatively recent kernel versions, not including
There is no ambiguouity. You clearly named a few ones that aren't
converted, but also a lot of make_request_fn based drivers which don't
support any I/O scheduler.
For someone reading the code there might not be any ambiguity, but from
the perspective of someone who isn't reading the code (or even someone
who has limited background in kernel programming), it very much is
ambiguous, especially what does and doesn't support I/O scheduling in
general.
But that whole point is that anything actively developed should move
over.
Agreed.