Re: [RFC 0/7] ext4: Allocator changes for atomic write support with DIO

From: John Garry
Date: Tue Dec 12 2023 - 02:47:21 EST


On 11/12/2023 10:54, Ojaswin Mujoo wrote:
This seems a rather big drawback.
So if I'm not wrong, we force the extent alignment as well as the size
of the extent in xfs right.

For XFS in my v1 patchset, we only force alignment (but not size).

It is assumed that the user will fallocate/dd the complete file before issuing atomic writes, and we will have extent alignment and length as required.

However - as we have seen with a trial user - it can create a problem if we don't do that and we write 4K and then overwrite with a 16K atomic write to a file, as 2x extents may be allocated for the complete 16K and it cannot be issued as a single BIO.


We didn't want to overly restrict the users of atomic writes by forcing
the extents to be of a certain alignment/size irrespective of the size
of write. The design in this patchset provides this flexibility at the
cost of some added precautions that the user should take (eg not doing
an atomic write on a pre existing unaligned extent etc).

Doesn't bigalloc already give you what you require here?

Thanks,
John