summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKonstantin Khlebnikov <khlebnikov@openvz.org>2012-01-11 00:07:18 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2012-01-11 01:30:42 +0100
commit5f8aefd44e64ed2f6950a1dcc77309b7dd9979f4 (patch)
tree524db6828c07e0f83f94d799cbc1bbb7dd8e6084
parentmm: avoid livelock on !__GFP_FS allocations (diff)
downloadlinux-5f8aefd44e64ed2f6950a1dcc77309b7dd9979f4.tar.xz
linux-5f8aefd44e64ed2f6950a1dcc77309b7dd9979f4.zip
mm: account reaped page cache on inode cache pruning
Inode cache pruning indirectly reclaims page-cache by invalidating mapping pages. Let's account them into reclaim-state to notice this progress in memory reclaimer. Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org> Cc: Dave Chinner <david@fromorbit.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--fs/inode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/inode.c b/fs/inode.c
index 87535753ab04..4fa4f0916af9 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -776,6 +776,8 @@ void prune_icache_sb(struct super_block *sb, int nr_to_scan)
else
__count_vm_events(PGINODESTEAL, reap);
spin_unlock(&sb->s_inode_lru_lock);
+ if (current->reclaim_state)
+ current->reclaim_state->reclaimed_slab += reap;
dispose_list(&freeable);
}