[PATCH] f2fs: avoid unnecessary shrink in f2fs_shrink_scan()

Chao Yu posted 1 patch 1 month, 3 weeks ago
fs/f2fs/shrinker.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] f2fs: avoid unnecessary shrink in f2fs_shrink_scan()
Posted by Chao Yu 1 month, 3 weeks ago
In f2fs_shrink_scan(), let's check if we have already shrinked enough
number of memory before calling f2fs_shrink_read_extent_tree().

Signed-off-by: Chao Yu <chao@kernel.org>
---
 fs/f2fs/shrinker.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/f2fs/shrinker.c b/fs/f2fs/shrinker.c
index b88babcf6ab4..4f6bf5926de4 100644
--- a/fs/f2fs/shrinker.c
+++ b/fs/f2fs/shrinker.c
@@ -109,7 +109,8 @@ unsigned long f2fs_shrink_scan(struct shrinker *shrink,
 		freed += f2fs_shrink_age_extent_tree(sbi, nr >> 2);
 
 		/* shrink read extent cache entries */
-		freed += f2fs_shrink_read_extent_tree(sbi, nr >> 2);
+		if (freed < nr)
+			freed += f2fs_shrink_read_extent_tree(sbi, nr >> 2);
 
 		/* shrink clean nat cache entries */
 		if (freed < nr)
-- 
2.49.0