statx.2: Add STATX_ATTR_DAX

Linux 5.8 adds STATX_ATTR_DAX support.

https://lore.kernel.org/lkml/20200428002142.404144-4-ira.weiny@intel.com/
https://lore.kernel.org/lkml/20200504161352.GA13783@magnolia/

Add the text to the statx man page.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Ira Weiny 2020-05-04 17:20:16 -07:00 committed by Michael Kerrisk
parent e9a0682b18
commit 38ad6a8808
1 changed files with 24 additions and 0 deletions

View File

@ -462,6 +462,30 @@ The file has fs-verity enabled.
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_DAX (since Linux 5.8)
The file is in the DAX (cpu direct access) state. DAX state attempts to
minimize software cache effects for both I/O and memory mappings of this file.
It requires a file system which has been configured to support DAX.
.PP
DAX generally assumes all accesses are via cpu load / store instructions which
can minimize overhead for small accesses, but may adversely affect cpu
utilization for large transfers.
.PP
File I/O is done directly to/from user-space buffers and memory mapped I/O may
be performed with direct memory mappings that bypass kernel page cache.
.PP
While the DAX property tends to result in data being transferred synchronously,
it does not give the same guarantees of O_SYNC where data and the necessary
metadata are transferred together.
.PP
A DAX file may support being mapped with the MAP_SYNC flag, which enables a
program to use CPU cache flush instructions to persist CPU store operations
without an explicit
.BR fsync(2).
See
.BR mmap(2)
for more information.
.SH RETURN VALUE
On success, zero is returned.
On error, \-1 is returned, and