Re: [PATCH 12/43] xfs: refine the unaligned check for always COW inodes in xfs_file_dio_write

Darrick J. Wong
2024-12-13T23:14:10Z

On Fri, Dec 13, 2024 at 06:14:00AM +0100, Christoph Hellwig wrote:
> On Thu, Dec 12, 2024 at 01:44:42PM -0800, Darrick J. Wong wrote:
> > On Wed, Dec 11, 2024 at 09:54:37AM +0100, Christoph Hellwig wrote:
> > > For always COW inodes we also must check the alignment of each individual
> > > iovec segment, as they could end up with different I/Os due to the way
> > > bio_iov_iter_get_pages works, and we'd then overwrite an already written
> > > block.
> >
> > I'm not sure why an alwayscow inode now needs to require fsblock-aligned
> > segments, seeing as it's been running mostly fine for years.
>
> Because the storage you test always_cow on doesn't actually force
> always_cow on you :) I.e. these segmented iovecs can end up overwriting
> a block. That's ok if you're on a conventional device, but it will
> error out on a sequential write required zoned.

Fine with me then :)
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>

--D