On Tue, Dec 13, 2022 at 06:29:29PM +0100, Andrey Albershteyn wrote: > Add flag to mark inodes which have fs-verity enabled on them (i.e. > descriptor exist and tree is built). ..... > > static inline bool xfs_dinode_has_bigtime(const struct xfs_dinode *dip) > { > diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c > index f08a2d5f96ad4..8d9c9697d3619 100644 > --- a/fs/xfs/xfs_inode.c > +++ b/fs/xfs/xfs_inode.c > @@ -636,6 +636,8 @@ xfs_ip2xflags( > flags |= FS_XFLAG_DAX; > if (ip->i_diflags2 & XFS_DIFLAG2_COWEXTSIZE) > flags |= FS_XFLAG_COWEXTSIZE; > + if (ip->i_diflags2 & XFS_DIFLAG2_VERITY) > + flags |= FS_VERITY_FL; > } Ah, attribute flag confusion - easy to do. xflags (FS_XFLAG*) are a different set of (extended) flags than the standard VFS inode flags (FS_*_FL). To place the verity enabled state in the extended flags, you would need to define FS_XFLAG_VERITY in include/uapi/linux/fs.h. You'll also need to add the conversion from FS_VERITY_FL to FS_XFLAG_VERITY to fileattr_fill_flags() and vice versa to fileattr_fill_xflags() This will allow both the VFS inode flags UAPI and the FS_IOC_FSGETXATTR extended flag API to see the inode has verity enabled on it. Once FS_XFLAG_VERITY is defined, changing the code in XFS to use it directly instead of FS_VERITY_FL will result in everything working correct throughout the code. Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx