On 9/12/24 17:22, John Garry wrote:
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.
Hmm. Why don't we reject such an I/O? We cannot guarantee an atomic
write, so I think we should be perfectly fine to return an error to
userspace.
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@xxxxxxx +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich