Re: [PATCH V5 00/12] Enable per-file/per-directory DAX operations V5

Ira Weiny
2020-04-05T06:19:49Z

> >
> > In summary:
> >
> > - Applications must call statx to discover the current S_DAX state.
>
> Ok.
>
> > - There exists an advisory file inode flag FS_XFLAG_DAX that is set based on
> > the parent directory FS_XFLAG_DAX inode flag. (There is no way to change
> > this flag after file creation.)
> >
> > If FS_XFLAG_DAX is set and the fs is on pmem then it will enable S_DAX at
> > inode load time; if FS_XFLAG_DAX is not set, it will not enable S_DAX.
> > Unless overridden...
>
> Ok, fine with me. :)

:-D

>
> > - There exists a dax= mount option.
> >
> > "-o dax=off" means "never set S_DAX, ignore FS_XFLAG_DAX"
> > "-o nodax" means "dax=off"
>
> I surveyed the three fses that support dax and found that none of the
> filesystems actually have a 'nodax' flag. Now would be the time not to
> add such a thing, and make people specify dax=off instead. It would
> be handy if we could have a single fsparam_enum for figuring out the dax
> mount options.

yes good point.

I'm working on updating the documentation patch and I think this might also
be better as:

-o dax=never

Which is the opposite of 'always'.

>
> > "-o dax=always" means "always set S_DAX (at least on pmem), ignore FS_XFLAG_DAX"
> > "-o dax" by itself means "dax=always"
> > "-o dax=iflag" means "follow FS_XFLAG_DAX" and is the default
> >
> > - There exists an advisory directory inode flag FS_XFLAG_DAX that can be
> > changed at any time. The flag state is copied into any files or
> > subdirectories when they are created within that directory. If programs
> > require file access runs in S_DAX mode, they'll have to create those files
>
> "...they must create..."

yes

>
> > inside a directory with FS_XFLAG_DAX set, or mount the fs with an
> > appropriate dax mount option.
>
> Otherwise seems ok to me.

Thanks!
Ira