Re: [PATCH v2 2/3] mm, dax: add VM_DAX flag for DAX VMAs

From: Dan Williams
Date: Thu Sep 15 2016 - 13:01:13 EST


On Thu, Sep 15, 2016 at 1:26 AM, Christoph Hellwig <hch@xxxxxx> wrote:
> On Wed, Sep 14, 2016 at 11:54:38PM -0700, Dan Williams wrote:
>> The DAX property, page cache bypass, of a VMA is only detectable via the
>> vma_is_dax() helper to check the S_DAX inode flag. However, this is
>> only available internal to the kernel and is a property that userspace
>> applications would like to interrogate.
>
> They have absolutely no business knowing such an implementation detail.

Hasn't that train already left the station with FS_XFLAG_DAX?

The other problem with hiding the DAX property is that it turns out to
not be a transparent acceleration feature. See xfs/086 xfs/088
xfs/089 xfs/091 which fail with DAX and, as far as I understand, it is
due to the fact that DAX disallows delayed allocation behavior.

If behavior changes I think we should indicate that to userspace and
VM_DAX is certainly more useful to userspace than some of the other vm
internals we already export in those flags.