| From: |
| Christoph Hellwig <hch-AT-lst.de> |
| To: |
| axboe-AT-fb.com |
| Subject: |
| block device direct I/O fast path |
| Date: |
| Mon, 31 Oct 2016 11:59:23 -0600 |
| Message-ID: |
| <1477936765-8828-1-git-send-email-hch@lst.de> |
| Cc: |
| linux-block-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org |
Hi Jens,
this small series adds a fasth path to the block device direct I/O
code. It uses new magic created by Kent to avoid allocating an array
for the pages, and as part of that allows small, non-aio direct I/O
requests to be done without memory allocations or atomic ops and with
a minimal cache footprint. It's basically a cut down version of the
new iomap direct I/O code, and in the future it might also make sense
to move the main direct I/O code to a similar model. But indepedent
of that it's always worth to optimize the case of small, non-I/O
requests as allocating the bio and biovec on stack and a trivial
completion handler will always win over a full blown implementation.