Re: [PATCH RFC 1/4] block: Make bdev_can_atomic_write() robust against mis-aligned bdev size

From: John Garry
Date: Thu Sep 12 2024 - 11:22:51 EST


On 12/09/2024 16:07, Christoph Hellwig wrote:
We should do be able to, but with this patch we cannot. However, a
misaligned partition would be very much unexpected.
Yes, misaligned partitions is very unexpected, but with large and
potentially unlimited atomic boundaries I would not expect the size
to always be aligned. But then again at least in NVMe atomic writes
don't need to match the max size anyway, so I'm not entirely sure
what the problem actually is.

Actually it's not an alignment issue, but a size issue.

Consider a 3.5MB partition and atomic write max is 1MB. If we tried to atomic write 1MB at offset 3MB, then it would be truncated to a 0.5MB write.

So maybe it is an application bug.


I could also just reject any truncation on the atomic write in fops. Maybe
that is better.