From: Darrick J. Wong <djwong@kernel.org>
Move the INEW wait into xfs_dqrele_inode so that we can drop the
iter_flags parameter in the next patch.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
fs/xfs/xfs_icache.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/fs/xfs/xfs_icache.c b/fs/xfs/xfs_icache.c
index bc88d33f7f24..b22a3fe20c4a 100644
--- a/fs/xfs/xfs_icache.c
+++ b/fs/xfs/xfs_icache.c
@@ -803,6 +803,9 @@ xfs_dqrele_inode(
{
struct xfs_eofblocks *eofb = priv;
+ if (xfs_iflags_test(ip, XFS_INEW))
+ xfs_inew_wait(ip);
+
xfs_ilock(ip, XFS_ILOCK_EXCL);
if (eofb->eof_flags & XFS_EOFB_DROP_UDQUOT) {
xfs_qm_dqrele(ip->i_udquot);@@ -841,8 +844,8 @@ xfs_dqrele_all_inodes(
if (qflags & XFS_PQUOTA_ACCT)
eofb.eof_flags |= XFS_EOFB_DROP_PDQUOT;
- return xfs_inode_walk(mp, XFS_INODE_WALK_INEW_WAIT, xfs_dqrele_inode,
- &eofb, XFS_ICWALK_DQRELE);
+ return xfs_inode_walk(mp, 0, xfs_dqrele_inode, &eofb,
+ XFS_ICWALK_DQRELE);
}
#else
# define xfs_dqrele_igrab(ip) (false)