[PATCH V1 0/9] Enable ext4 support for per-file/directory DAX operations

ira.weiny
2020-05-14T06:54:06Z

Enable the same per file DAX support in ext4 as was done for xfs. This series
builds and depends on the V11 series for xfs.[1]

This passes the same xfstests test as XFS.

The only issue is that this modifies the old mount option parsing code rather
than waiting for the new parsing code to be finalized.

This series starts with 3 fixes which include making Verity and Encrypt truly
mutually exclusive from DAX. I think these first 3 patches should be picked up
for 5.8 regardless of what is decided regarding the mount parsing.

[1] https://lore.kernel.org/lkml/20200428002142.404144-1-ira.weiny@intel.com/

Changes from V0:
Collect reviews
Fix up setting don't cache in ioctl code
Add FS_DAX_FL flag for consistency

To: linux-ext4@vger.kernel.org
To: "Theodore Y. Ts'o" <tytso@mit.edu>
To: Jan Kara <jack@suse.cz>
Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: linux-kernel@vger.kernel.org
Cc: linux-xfs@vger.kernel.org
Cc: linux-fsdevel@vger.kernel.org

Ira Weiny (9):
fs/ext4: Narrow scope of DAX check in setflags
fs/ext4: Disallow verity if inode is DAX
fs/ext4: Disallow encryption if inode is DAX
fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS
fs/ext4: Update ext4_should_use_dax()
fs/ext4: Only change S_DAX on inode load
fs/ext4: Make DAX mount option a tri-state
fs/ext4: Introduce DAX inode flag
Documentation/dax: Update DAX enablement for ext4

Documentation/filesystems/dax.txt | 6 +-
Documentation/filesystems/ext4/verity.rst | 7 +++
Documentation/filesystems/fscrypt.rst | 4 +-
fs/ext4/ext4.h | 20 ++++---
fs/ext4/ialloc.c | 2 +-
fs/ext4/inode.c | 27 +++++++--
fs/ext4/ioctl.c | 31 +++++++++--
fs/ext4/super.c | 67 +++++++++++++++--------
fs/ext4/verity.c | 5 +-
include/uapi/linux/fs.h | 1 +
10 files changed, 125 insertions(+), 45 deletions(-)

--
2.25.1