From: Darrick J. Wong <djwong@xxxxxxxxxx> Any time we try to modify a file's contents and it fails due to ENOSPC or EDQUOT, force inode inactivation work to try to free space. Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> --- fs/xfs/xfs_icache.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/fs/xfs/xfs_icache.c b/fs/xfs/xfs_icache.c index 803f1241f867..b0293ab55385 100644 --- a/fs/xfs/xfs_icache.c +++ b/fs/xfs/xfs_icache.c @@ -1690,9 +1690,15 @@ xfs_blockgc_free_space( struct xfs_mount *mp, struct xfs_eofblocks *eofb) { + int error; + trace_xfs_blockgc_free_space(mp, eofb, _RET_IP_); - return xfs_inode_walk(mp, XFS_ICI_BLOCKGC_TAG, eofb); + error = xfs_inode_walk(mp, XFS_ICI_BLOCKGC_TAG, eofb); + if (error) + return error; + + return xfs_inodegc_free_space(mp, eofb); } /*