You did provide a relatively large value in 16MB. When I say relative, IThe target user I see for RWF_ATOMIC write is applications
mean relative to what can be achieved with HW offload today.
The target user we see for this feature is DBs, and they want to do writes
in the 16/32/64KB size range. Indeed, these are the sort of sizes we see
supported in terms of disk atomic write support today.
overwriting files safely (e.g. config files, documents, etc).
This requires an atomic write operation that is large enough to
overwrite the file entirely in one go.
i.e. we need to think about how RWF_ATOMIC is applicable to the
entire userspace ecosystem, not just a narrow database specific
niche. Databases really want atomic writes to avoid the need for
WAL, whereas application developers that keep asking us for safe
file overwrite without fsync() for arbitrary sized files and IO.