From: Zhiguo Niu Date: Mon, 10 Feb 2025 01:24:09 +0000 (+0800) Subject: f2fs: fix to return SHRINK_EMPTY if no objects to free X-Git-Tag: v6.15-rc1~151^2~64 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bd409934c0619a6c3507891844aeb0c0dca69e18;p=thirdparty%2Fkernel%2Flinux.git f2fs: fix to return SHRINK_EMPTY if no objects to free Quoted from include/linux/shrinker.h "count_objects should return the number of freeable items in the cache. If there are no objects to free, it should return SHRINK_EMPTY, while 0 is returned in cases of the number of freeable items cannot be determined or shrinker should skip this cache for this time (e.g., their number is below shrinkable limit)." Signed-off-by: Zhiguo Niu Reviewed-by: Chao Yu Signed-off-by: Jaegeuk Kim --- diff --git a/fs/f2fs/shrinker.c b/fs/f2fs/shrinker.c index 83d6fb97dcae0..fc1bbef418ce9 100644 --- a/fs/f2fs/shrinker.c +++ b/fs/f2fs/shrinker.c @@ -73,7 +73,7 @@ unsigned long f2fs_shrink_count(struct shrinker *shrink, mutex_unlock(&sbi->umount_mutex); } spin_unlock(&f2fs_list_lock); - return count; + return count ?: SHRINK_EMPTY; } unsigned long f2fs_shrink_scan(struct shrinker *shrink,