aboutsummaryrefslogtreecommitdiffstats
path: root/man/man2
diff options
context:
space:
mode:
authorHimanshu Madhani <himanshu.madhani@oracle.com>2024-07-22 09:57:21 +0000
committerAlejandro Colomar <alx@kernel.org>2024-07-31 12:17:33 +0200
commitd4de003f2d752e514f0d28e1df62583fab186a9e (patch)
tree7dfe9969bad38d08aa3a51462cff164b2ac82433 /man/man2
parentcbc0a111e4dceea2037c51098de33e6bc8c16a5c (diff)
downloadman-pages-d4de003f2d752e514f0d28e1df62583fab186a9e.tar.gz
statx.2: Document STATX_WRITE_ATOMIC
Add the text to the statx man page. Signed-off-by: Himanshu Madhani <himanshu.madhani@oracle.com> Reviewed-by: "Darrick J. Wong" <djwong@kernel.org> Signed-off-by: John Garry <john.g.garry@oracle.com> Cc: <linux-fsdevel@vger.kernel.org> Cc: Jens Axboe <axboe@kernel.dk> Cc: Christoph Hellwig <hch@lst.de> Cc: Dave Chinner <dchinner@redhat.com> Cc: "Martin K. Petersen" <martin.petersen@oracle.com> Message-ID: <20240722095723.597846-2-john.g.garry@oracle.com> [alx: ffix] Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man/man2')
-rw-r--r--man/man2/statx.228
1 files changed, 28 insertions, 0 deletions
diff --git a/man/man2/statx.2 b/man/man2/statx.2
index 02c59b66c3..f7a06467de 100644
--- a/man/man2/statx.2
+++ b/man/man2/statx.2
@@ -70,6 +70,11 @@ struct statx {
__u32 stx_dio_offset_align;
\&
__u64 stx_subvol; /* Subvolume identifier */
+\&
+ /* Direct I/O atomic write limits */
+ __u32 stx_atomic_write_unit_min;
+ __u32 stx_atomic_write_unit_max;
+ __u32 stx_atomic_write_segments_max;
};
.EE
.in
@@ -259,6 +264,10 @@ STATX_DIOALIGN Want stx_dio_mem_align and stx_dio_offset_align
STATX_MNT_ID_UNIQUE Want unique stx_mnt_id (since Linux 6.8)
STATX_SUBVOL Want stx_subvol
(since Linux 6.10; support varies by filesystem)
+STATX_WRITE_ATOMIC Want stx_atomic_write_unit_min,
+ stx_atomic_write_unit_max,
+ and stx_atomic_write_segments_max.
+ (since Linux 6.11; support varies by filesystem)
.TE
.in
.P
@@ -463,6 +472,22 @@ Subvolumes are fancy directories,
i.e. they form a tree structure that may be walked recursively.
Support varies by filesystem;
it is supported by bcachefs and btrfs since Linux 6.10.
+.TP
+.I stx_atomic_write_unit_min
+.TQ
+.I stx_atomic_write_unit_max
+The minimum and maximum sizes (in bytes) supported for direct I/O
+.RB ( O_DIRECT )
+on the file to be written with torn-write protection.
+These values are each guaranteed to be a power-of-2.
+.TP
+.I stx_atomic_write_segments_max
+The maximum number of elements in an array of vectors
+for a write with torn-write protection enabled.
+See
+.B RWF_ATOMIC
+flag for
+.BR pwritev2 (2).
.P
For further information on the above fields, see
.BR inode (7).
@@ -516,6 +541,9 @@ It cannot be written to, and all reads from it will be verified
against a cryptographic hash that covers the
entire file (e.g., via a Merkle tree).
.TP
+.BR STATX_ATTR_WRITE_ATOMIC " (since Linux 6.11)"
+The file supports torn-write protection.
+.TP
.BR STATX_ATTR_DAX " (since Linux 5.8)"
The file is in the DAX (cpu direct access) state.
DAX state attempts to