Re: [PATCH] fs: Fix page_mkwrite off-by-one errors

From: Christoph Hellwig
Date: Thu Nov 28 2019 - 10:45:25 EST


On Wed, Nov 27, 2019 at 07:49:54AM -0800, Darrick J. Wong wrote:
> On Wed, Nov 27, 2019 at 04:18:11PM +0100, Andreas Gruenbacher wrote:
> > Fix a check in block_page_mkwrite meant to determine whether an offset
> > is within the inode size. This error has spread to several filesystems
> > and to iomap_page_mkwrite, so fix those instances as well.
>
> Seeing how this has gotten screwed up at least six times in the kernel,
> maybe we need a static inline helper to do this for us?

Yes. I think we really want a little helper that checks the mapping
and the offset. That also gives us the opportunity to document the
semantics.

>
> > Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
>
> The iomap part looks ok,
> Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
>
> (I might just extract the iomap part and put it in the iomap tree if
> someone doesn't merge this one before I get to it...)

I think we should just pull in the helper and conversions through
some tree after all iomap bits are merged. It might as well be
the iomap tree as that seems to the place for file system read/write
infrastructure these days.