blob: f9a2a1bcb08538953aa7f267ef7d37eb6a7922f1 [file] [log] [blame]
From dc217a2877487f674d206e6a6d34cda8a6000dc0 Mon Sep 17 00:00:00 2001
From: Gao Xiang <gaoxiang25@huawei.com>
Date: Wed, 26 Feb 2020 16:10:06 +0800
Subject: [PATCH] erofs: correct the remaining shrink objects
commit 9d5a09c6f3b5fb85af20e3a34827b5d27d152b34 upstream.
The remaining count should not include successful
shrink attempts.
Fixes: e7e9a307be9d ("staging: erofs: introduce workstation for decompression")
Cc: <stable@vger.kernel.org> # 4.19+
Link: https://lore.kernel.org/r/20200226081008.86348-1-gaoxiang25@huawei.com
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Gao Xiang <gaoxiang25@huawei.com>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
diff --git a/drivers/staging/erofs/utils.c b/drivers/staging/erofs/utils.c
index 3e7d30b6de1d..c6a7d0733eaa 100644
--- a/drivers/staging/erofs/utils.c
+++ b/drivers/staging/erofs/utils.c
@@ -312,7 +312,7 @@ static unsigned long erofs_shrink_scan(struct shrinker *shrink,
sbi->shrinker_run_no = run_no;
#ifdef CONFIG_EROFS_FS_ZIP
- freed += erofs_shrink_workstation(sbi, nr, false);
+ freed += erofs_shrink_workstation(sbi, nr - freed, false);
#endif
spin_lock(&erofs_sb_list_lock);
--
2.7.4