On Mon, Dec 18, 2023 at 09:14:56PM -0800, Darrick J. Wong wrote: > /me stumbles back in with plenty of covidbrain to go around. > > So ... Christoph, you're asking for a common API for > sysadmins/applications to signal to the filesystem that they want all > data allocations aligned to a given value, right? > > e.g. if a nvme device advertises a capability for untorn writes between > $lbasize and 64k, then we need a way to set up each untorn-file with > some alignment between $lbasize and 64k? > > or if cxl storage becomes not ung-dly expensive, then we'd want a way to > set up files with an alignment of 2M (x86) or 512M (arm64lol) to take > advantage of PMD mmap mappings? The most important point is to not mix these up. If we want to use a file for atomic writes I should tell the fs about it, and preferably in a way that does not require me to know about weird internal implementation details of every file system. I really just want to use atomic writes. Preferably I'd just start using them after asking for the limits. But that's obviously not going to work for file systems that use the hardware offload and don't otherwise align to the limit (which would suck for very small files anyway :)) So as a compromise I tell the file system before writing or otherwise adding any data [1] to file that I want to use atomic writes so that the fs can take the right decisions. [1] reflinking data into a such marked file will be ... interesting.