Re: iomap infrastructure and multipage writes V2

Dave Chinner
2016-04-13T21:54:48Z

On Tue, Apr 12, 2016 at 01:52:54PM -0700, Christoph Hellwig wrote:
> This series add a new file system I/O path that uses the iomap structure
> introduced for the pNFS support and support multi-page buffered writes.
>
> This was first started by Dave Chinner a long time ago, then I did beat
> it into shape for production runs in a very constrained ARM NAS
> enviroment for Tuxera almost as long ago, and now half a dozen rewrites
> later it's back.
>
> The basic idea is to avoid the crazy per-block get_blocks overhead
> and make use of extents in the buffered write path by iterating over
> them instead.
>
> Chances since V1:
> - add support for fiemap
> - fix a test fail on 1k block sizes
> - prepare for 64-bit length, this will be used in a follow on patchset

This appears to pass xfstests on all my test setups without any
regressions. I haven't tested RT devices yet, but we can ignore that
for now. I guess now it's time to look harder at the code.

Christoph, have you done any perf testing of this patchset yet to
check that it does indeed reduce the CPU overhead of large write
operations? I'd also be interested to know if there is any change in
overhead for single page (4k) IOs as well, even though I suspect
there won't be.

Cheers,

Dave.
--
Dave Chinner
david@fromorbit.com