On Thu, Aug 26, 2021 at 01:16:22PM -0500, Eric Sandeen wrote: > > On 8/26/21 1:09 PM, Darrick J. Wong wrote: > > On Thu, Aug 26, 2021 at 12:30:12PM -0500, Bill O'Donnell wrote: > > > > @@ -1584,7 +1586,7 @@ xfs_fs_fill_super( > > > if (xfs_has_crc(mp)) > > > sb->s_flags |= SB_I_VERSION; > > > - if (xfs_has_dax_always(mp)) { > > > + if (xfs_has_dax_always(mp) || xfs_has_dax_inode(mp)) { > > > > Er... can't this be done without burning another feature bit by: > > > > if (xfs_has_dax_always(mp) || (!xfs_has_dax_always(mp) && > > !xfs_has_dax_never(mp))) { > > ... > > xfs_warn(mp, "DAX IS EXPERIMENTAL"); > > } > > changing this conditional in this way will also fail dax=inode mounts on > reflink-capable (i.e. default) filesystems, no? Correct. My original patch tests fine, and still handles the reflink and dax incompatibility. The new suggested logic is problematic. -Bill > > - if (xfs_has_dax_always(mp)) { > + if (xfs_has_dax_always(mp) || $NEW_DAX_INODE_TEST) { > > ... > if (xfs_has_reflink(mp)) { > xfs_alert(mp, > "DAX and reflink cannot be used together!"); > error = -EINVAL; > goto out_filestream_unmount; > } > } > > -Eric >