Skip to content

Commit 69056ee

Browse files
Dave Chinnertorvalds
authored andcommitted
Revert "mm: don't reclaim inodes with many attached pages"
This reverts commit a76cf1a ("mm: don't reclaim inodes with many attached pages"). This change causes serious changes to page cache and inode cache behaviour and balance, resulting in major performance regressions when combining worklaods such as large file copies and kernel compiles. https://bugzilla.kernel.org/show_bug.cgi?id=202441 This change is a hack to work around the problems introduced by changing how agressive shrinkers are on small caches in commit 172b06c ("mm: slowly shrink slabs with a relatively small number of objects"). It creates more problems than it solves, wasn't adequately reviewed or tested, so it needs to be reverted. Link: http://lkml.kernel.org/r/20190130041707.27750-2-david@fromorbit.com Fixes: a76cf1a ("mm: don't reclaim inodes with many attached pages") Signed-off-by: Dave Chinner <dchinner@redhat.com> Cc: Wolfgang Walter <linux@stwm.de> Cc: Roman Gushchin <guro@fb.com> Cc: Spock <dairinin@gmail.com> Cc: Rik van Riel <riel@surriel.com> Cc: Michal Hocko <mhocko@kernel.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent aa0c38c commit 69056ee

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

fs/inode.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -730,11 +730,8 @@ static enum lru_status inode_lru_isolate(struct list_head *item,
730730
return LRU_REMOVED;
731731
}
732732

733-
/*
734-
* Recently referenced inodes and inodes with many attached pages
735-
* get one more pass.
736-
*/
737-
if (inode->i_state & I_REFERENCED || inode->i_data.nrpages > 1) {
733+
/* recently referenced inodes get one more pass */
734+
if (inode->i_state & I_REFERENCED) {
738735
inode->i_state &= ~I_REFERENCED;
739736
spin_unlock(&inode->i_lock);
740737
return LRU_ROTATE;

0 commit comments

Comments
 (0)