The patch titled Subject: xfs: remove restrictions for fsdax and reflink has been added to the -mm mm-unstable branch. Its filename is xfs-remove-restrictions-for-fsdax-and-reflink.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/xfs-remove-restrictions-for-fsdax-and-reflink.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Shiyang Ruan <ruansy.fnst@xxxxxxxxxxx> Subject: xfs: remove restrictions for fsdax and reflink Date: Thu, 1 Dec 2022 15:32:53 +0000 Since the basic function for fsdax and reflink has been implemented, remove the restrictions of them for widly test. Link: https://lkml.kernel.org/r/1669908773-207-1-git-send-email-ruansy.fnst@xxxxxxxxxxx Signed-off-by: Shiyang Ruan <ruansy.fnst@xxxxxxxxxxx> Cc: Alistair Popple <apopple@xxxxxxxxxx> Cc: Dan Williams <dan.j.williams@xxxxxxxxx> Cc: Dave Chinner <david@xxxxxxxxxxxxx> Cc: Jason Gunthorpe <jgg@xxxxxxxxxx> Cc: John Hubbard <jhubbard@xxxxxxxxxx> Cc: Darrick J. Wong <djwong@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/xfs/xfs_ioctl.c | 4 ---- fs/xfs/xfs_iops.c | 4 ---- 2 files changed, 8 deletions(-) --- a/fs/xfs/xfs_ioctl.c~xfs-remove-restrictions-for-fsdax-and-reflink +++ a/fs/xfs/xfs_ioctl.c @@ -1138,10 +1138,6 @@ xfs_ioctl_setattr_xflags( if ((fa->fsx_xflags & FS_XFLAG_REALTIME) && xfs_is_reflink_inode(ip)) ip->i_diflags2 &= ~XFS_DIFLAG2_REFLINK; - /* Don't allow us to set DAX mode for a reflinked file for now. */ - if ((fa->fsx_xflags & FS_XFLAG_DAX) && xfs_is_reflink_inode(ip)) - return -EINVAL; - /* diflags2 only valid for v3 inodes. */ i_flags2 = xfs_flags2diflags2(ip, fa->fsx_xflags); if (i_flags2 && !xfs_has_v3inodes(mp)) --- a/fs/xfs/xfs_iops.c~xfs-remove-restrictions-for-fsdax-and-reflink +++ a/fs/xfs/xfs_iops.c @@ -1185,10 +1185,6 @@ xfs_inode_supports_dax( if (!S_ISREG(VFS_I(ip)->i_mode)) return false; - /* Only supported on non-reflinked files. */ - if (xfs_is_reflink_inode(ip)) - return false; - /* Block size must match page size */ if (mp->m_sb.sb_blocksize != PAGE_SIZE) return false; _ Patches currently in -mm which might be from ruansy.fnst@xxxxxxxxxxx are fsdax-introduce-page-share-for-fsdax-in-reflink-mode.patch fsdax-invalidate-pages-when-cow.patch fsdax-zero-the-edges-if-source-is-hole-or-unwritten.patch fsdaxxfs-set-the-shared-flag-when-file-extent-is-shared.patch fsdax-dedupe-iter-two-files-at-the-same-time.patch xfs-use-dax-ops-for-zero-and-truncate-in-fsdax-mode.patch fsdaxxfs-port-unshare-to-fsdax.patch xfs-remove-restrictions-for-fsdax-and-reflink.patch