summaryrefslogtreecommitdiff
path: root/fs/xfs/quota
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2010-04-29 09:55:50 +1000
committerAlex Elder <aelder@sgi.com>2010-04-29 16:22:13 -0500
commit9bf729c0af67897ea8498ce17c29b0683f7f2028 (patch)
tree9e6350fd9da5aef0b53ddeddd82f618ae16bf931 /fs/xfs/quota
parent79dba2eaa771c3173957eccfd288e0e0d12e4d3f (diff)
downloadlinux-3.10-9bf729c0af67897ea8498ce17c29b0683f7f2028.tar.gz
linux-3.10-9bf729c0af67897ea8498ce17c29b0683f7f2028.tar.bz2
linux-3.10-9bf729c0af67897ea8498ce17c29b0683f7f2028.zip
xfs: add a shrinker to background inode reclaim
On low memory boxes or those with highmem, kernel can OOM before the background reclaims inodes via xfssyncd. Add a shrinker to run inode reclaim so that it inode reclaim is expedited when memory is low. This is more complex than it needs to be because the VM folk don't want a context added to the shrinker infrastructure. Hence we need to add a global list of XFS mount structures so the shrinker can traverse them. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/quota')
-rw-r--r--fs/xfs/quota/xfs_qm_syscalls.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/quota/xfs_qm_syscalls.c b/fs/xfs/quota/xfs_qm_syscalls.c
index 5d0ee8d492d..50bee07d6b0 100644
--- a/fs/xfs/quota/xfs_qm_syscalls.c
+++ b/fs/xfs/quota/xfs_qm_syscalls.c
@@ -891,7 +891,8 @@ xfs_qm_dqrele_all_inodes(
uint flags)
{
ASSERT(mp->m_quotainfo);
- xfs_inode_ag_iterator(mp, xfs_dqrele_inode, flags, XFS_ICI_NO_TAG, 0);
+ xfs_inode_ag_iterator(mp, xfs_dqrele_inode, flags,
+ XFS_ICI_NO_TAG, 0, NULL);
}
/*------------------------------------------------------------------------*/