For direct I/O, requests will only succeed if cache invalidation isn't required,
file blocks are fully allocated and the disk request could be issued immediately.
+.. option:: atomic=bool : [pvsync2] [libaio] [io_uring]
+
+ This option means that writes are issued with torn-write protection, meaning
+ that for a power fail or kernel crash, all or none of the data from the write
+ will be stored, but never a mix of old and new data. Torn-write protection is
+ also known as atomic writes.
+
+ This option sets the RWF_ATOMIC flag (supported from the 6.11 Linux kernel) on
+ a per-IO basis.
+
+ Writes with RWF_ATOMIC set will be rejected by the kernel when the file does
+ not support torn-write protection. To learn a file's torn-write limits, issue
+ statx with STATX_WRITE_ATOMIC.
+
.. option:: fdp=bool : [io_uring_cmd] [xnvme]
Enable Flexible Data Placement mode for write commands.
For direct I/O, requests will only succeed if cache invalidation isn't required,
file blocks are fully allocated and the disk request could be issued immediately.
.TP
+.BI (pvsync2,libaio,io_uring)atomic \fR=\fPbool
+This option means that writes are issued with torn-write protection, meaning
+that for a power fail or kernel crash, all or none of the data from the write
+will be stored, but never a mix of old and new data. Torn-write protection is
+also known as atomic writes.
+
+This option sets the RWF_ATOMIC flag (supported from the 6.11 Linux kernel) on
+a per-IO basis.
+
+Writes with RWF_ATOMIC set will be rejected by the kernel when the file does
+not support torn-write protection. To learn a file's torn-write limits, issue
+statx with STATX_WRITE_ATOMIC.
+.TP
.BI (io_uring_cmd,xnvme)fdp \fR=\fPbool
Enable Flexible Data Placement mode for write commands.
.TP