Re: [PATCH] man/statx: Add STATX_ATTR_DAX

From: Michael Kerrisk (man-pages)
Date: Tue Sep 29 2020 - 04:38:52 EST


Hello Ira,

On 9/28/20 6:42 PM, Ira Weiny wrote:
> On Mon, May 04, 2020 at 05:20:16PM -0700, 'Ira Weiny' wrote:
>> From: Ira Weiny <ira.weiny@xxxxxxxxx>
>>
>> Linux 5.8 is slated to have STATX_ATTR_DAX support.
>>
>> https://lore.kernel.org/lkml/20200428002142.404144-4-ira.weiny@xxxxxxxxx/
>> https://lore.kernel.org/lkml/20200504161352.GA13783@magnolia/
>>
>> Add the text to the statx man page.
>>
>> Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
>
> Have I sent this to the wrong list? Or perhaps I have missed a reply.

No, it's just me being a bit slow, I'm sorry. Thank you for pining.

> I don't see this applied to the man-pages project.[1] But perhaps I am looking
> at the wrong place?

Your patch is applied now, and pushed to kernel .org. Thanks!

Cheers,

Michael

> [1] git://git.kernel.org/pub/scm/docs/man-pages/man-pages.git
>
>> ---
>> man2/statx.2 | 24 ++++++++++++++++++++++++
>> 1 file changed, 24 insertions(+)
>>
>> diff --git a/man2/statx.2 b/man2/statx.2
>> index 2e90f07dbdbc..14c4ab78e7bd 100644
>> --- a/man2/statx.2
>> +++ b/man2/statx.2
>> @@ -468,6 +468,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
>> --
>> 2.25.1
>>


--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/