From: Ira Weiny <ira.weiny@xxxxxxxxx> Changes from V4: Fix up DAX mutual exclusion with other flags. Add clean up patch (remove jflags) Changes from V3: Change EXT4_DAX_FL to bit24 Cache device DAX support in the super block and use that is ext4_should_use_dax() Changes from V2: Rework DAX exclusivity with verity and encryption based on feedback from Eric 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@xxxxxxxxx/ To: linux-ext4@xxxxxxxxxxxxxxx To: Andreas Dilger <adilger.kernel@xxxxxxxxx> To: "Theodore Y. Ts'o" <tytso@xxxxxxx> To: Jan Kara <jack@xxxxxxx> To: Eric Biggers <ebiggers@xxxxxxxxxx> Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Cc: Dan Williams <dan.j.williams@xxxxxxxxx> Cc: Dave Chinner <david@xxxxxxxxxxxxx> Cc: Christoph Hellwig <hch@xxxxxx> Cc: Jeff Moyer <jmoyer@xxxxxxxxxx> Cc: "Darrick J. Wong" <darrick.wong@xxxxxxxxxx> Cc: linux-fsdevel@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Ira Weiny (9): fs/ext4: Narrow scope of DAX check in setflags fs/ext4: Disallow verity 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: Remove jflag variable fs/ext4: Introduce DAX inode flag Documentation/dax: Update DAX enablement for ext4 Documentation/filesystems/dax.txt | 6 +- Documentation/filesystems/ext4/verity.rst | 3 + fs/ext4/ext4.h | 27 +++++-- fs/ext4/ialloc.c | 2 +- fs/ext4/inode.c | 26 +++++-- fs/ext4/ioctl.c | 65 ++++++++++++++--- fs/ext4/super.c | 85 ++++++++++++++++++----- fs/ext4/verity.c | 5 +- include/uapi/linux/fs.h | 1 + 9 files changed, 175 insertions(+), 45 deletions(-) -- 2.25.1