On Mon, May 31, 2021 at 03:40:38PM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@xxxxxxxxxx> > > Remove the unnecessary convenience variable. > > Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> > --- > fs/xfs/xfs_inode.c | 25 +++++++++++-------------- > 1 file changed, 11 insertions(+), 14 deletions(-) > > > diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c > index e4c2da4566f1..1e28997c6f78 100644 > --- a/fs/xfs/xfs_inode.c > +++ b/fs/xfs/xfs_inode.c > @@ -689,47 +689,44 @@ xfs_inode_inherit_flags( > struct xfs_inode *ip, > const struct xfs_inode *pip) > { > - unsigned int di_flags = 0; > xfs_failaddr_t failaddr; > umode_t mode = VFS_I(ip)->i_mode; > > if (S_ISDIR(mode)) { > if (pip->i_diflags & XFS_DIFLAG_RTINHERIT) > - di_flags |= XFS_DIFLAG_RTINHERIT; > + ip->i_diflags |= XFS_DIFLAG_RTINHERIT; > if (pip->i_diflags & XFS_DIFLAG_EXTSZINHERIT) { > - di_flags |= XFS_DIFLAG_EXTSZINHERIT; > + ip->i_diflags |= XFS_DIFLAG_EXTSZINHERIT; > ip->i_extsize = pip->i_extsize; > } Hmmmm. IIRC, these functions were originally written this way because the compiler generated much better code using a local variable than when writing directly to the ip->i_d.di_flags. Is this still true now? I think it's worth checking, because we have changed the structure of the xfs_inode (removed the i_d structure) so maybe this isn't a concern anymore? Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx