Re: [GIT PULL] block IO core bits for 3.13

From: Nicholas A. Bellinger
Date: Thu Nov 14 2013 - 03:06:22 EST


On Fri, 2013-11-08 at 10:48 -0700, Jens Axboe wrote:
> Hi Linus,
>
> This is the pull request for the core changes in the block layer for
> 3.13. It contains:
>
> - The new blk-mq request interface. This is a new and more scalable
> queueing model that marries the best part of the request based
> interface we currently have (which is fully featured, but scales
> poorly) and the bio based "interface" which the new drivers for high
> IOPS devices end up using because it's much faster than the request
> based one. The bio interface has no block layer support, since it taps
> into the stack much earlier. This means that drivers end up having to
> implement a lot of functionality on their own, like tagging, timeout
> handling, requeue, etc. The blk-mq interface provides all these. Some
> drivers even provide a switch to select bio or rq and has code to
> handle both, since things like merging only works in the rq model and
> hence is faster for some workloads. This is a huge mess. Conversion of
> these drivers nets us a substantial code reduction. Initial results on
> converting SCSI to this model even shows an 8x improvement on single
> queue devices. So while the model was intended to work on the newer
> multiqueue devices, it has substantial improvements for "classic"
> hardware as well. This code has gone through extensive testing and
> development, it's now ready to go. A pull request is coming to convert
> virtio-blk to this model will be will be coming as well, with more
> drivers scheduled for 3.14 conversion.
>

Hey Jens,

Just wanted to say, congratulations on this evenings merge of blk-mq!

I'm really excited to see this code upstream in v3.13, and the merge
being a catalyst for the next generation of flash device design that
takes advantage of all blk-mq has to offer.

Not to mention, progressing scsi-mq forward from alpha prototype -> beta
status over the next months, to move beyond our current SCSI initiator
performance constraints.

So, perhaps fitting NAME for v3.13 would be along the lines of
"I/O, the next generation".

;-)

--nab

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/