From: Gao Xiang <[email protected]>

commit 9d5a09c6f3b5fb85af20e3a34827b5d27d152b34 upstream.

The remaining count should not include successful
shrink attempts.

Fixes: e7e9a307be9d ("staging: erofs: introduce workstation for decompression")
Cc: <[email protected]> # 4.19+
Link: https://lore.kernel.org/r/[email protected]
Reviewed-by: Chao Yu <[email protected]>
Signed-off-by: Gao Xiang <[email protected]>
---

trivial adaption, build verified.

 fs/erofs/utils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/erofs/utils.c b/fs/erofs/utils.c
index d92b3e753a6f..3e28fd082df0 100644
--- a/fs/erofs/utils.c
+++ b/fs/erofs/utils.c
@@ -294,7 +294,7 @@ static unsigned long erofs_shrink_scan(struct shrinker 
*shrink,
                spin_unlock(&erofs_sb_list_lock);
                sbi->shrinker_run_no = run_no;
 
-               freed += erofs_shrink_workstation(sbi, nr, false);
+               freed += erofs_shrink_workstation(sbi, nr - freed, false);
 
                spin_lock(&erofs_sb_list_lock);
                /* Get the next list element before we move this one */
-- 
2.24.0

Reply via email to