From nobody Sun Dec 14 13:58:34 2025 Received: from smtpbgbr2.qq.com (smtpbgbr2.qq.com [54.207.22.56]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0FF9F197A8B for ; Thu, 16 Jan 2025 08:37:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.207.22.56 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737016656; cv=none; b=P7zGwhkNixeVmU4w98IshwCR6LbJL4MfkdaGOOWbIFCVqlSv2w0P2KgKZwtZ2qX/jHsv5KFrU6iONiMSuYuqHizrnHBWLcmrM5WwMV3WIsZBLty0WRU9kM3FH6enGEmKmXfg/IlrVgeIMAK1MZrz3Bwu9qanr0idcvuNzqg2rH4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737016656; c=relaxed/simple; bh=p2fVPd29tJbQTiVipne0uDa90QPGr9mM/y011DHQzpo=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=h1zyGKeFpyuUPrQNMvpjdGJlqsufdRL+6KdEWHDog04e+ynSFJoaHArc0YYK603EgHm0wA3dOE3VxKVevLk68Bs0/2QmNKDC+8B19MLd8uWskbHjXZePxVdo34KvURwqp890xPnk0GBuDd+fn/NEHzeBQZMqpnMS6NcnGpP+xKQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com; spf=pass smtp.mailfrom=uniontech.com; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b=bM34JS1l; arc=none smtp.client-ip=54.207.22.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=uniontech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=uniontech.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=uniontech.com header.i=@uniontech.com header.b="bM34JS1l" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uniontech.com; s=onoh2408; t=1737016581; bh=otpLROXolPbT7ec9YcvlHuENAhnyCwUjJEVlWqwt4N4=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=bM34JS1lLXuARpjOE3ZKTyXHzxy4TBe/R4V0IRfsFAEC+dQM6f+BJjT+lEhrXB7f5 CKbx9MlkzxJjoYGJcPD9w6YOskQmnsuDiBW6bwyTVDwOhRsBPyVprFg9V7OIToW3Bn sFNuwTRLyeRMMm8k0fpqP3t1K1hQu0BlBDImF4OI= X-QQ-mid: bizesmtp77t1737016563tkodmhws X-QQ-Originating-IP: R22WAXSZ8O0Y1UIQD9n02oQYDOsIlwAmFRJoliXHzBA= Received: from localhost.localdomain ( [113.57.152.160]) by bizesmtp.qq.com (ESMTP) with id ; Thu, 16 Jan 2025 16:36:01 +0800 (CST) X-QQ-SSF: 0000000000000000000000000000000 X-QQ-GoodBg: 1 X-BIZMAIL-ID: 7777656777610264926 From: Chen Linxuan To: Gao Xiang , Chao Yu , Yue Hu , Jeffle Xu , Sandeep Dhavale Cc: Chen Linxuan , linux-erofs@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] erofs(shrinker): return SHRINK_EMPTY if no objects to free Date: Thu, 16 Jan 2025 16:33:02 +0800 Message-ID: <149E6E64B5B6B5E8+20250116083303.199817-1-chenlinxuan@uniontech.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:uniontech.com:qybglogicsvrgz:qybglogicsvrgz5a-1 X-QQ-XMAILINFO: N+gRuBp2eEM11ecl6HkjBu8gTd/Q2IREtOHMw/14si4jhpmV8i4GtKwE axxVj8ANAxQWBSwNr35pT5FrxuF001cIKGWvS+qQsvKbLO0kmMb151fcMkQJmfFyUULl19A xnD1OCK93WPSY5Jb+pLwLx8cuSH3DGUddVwNwFaJkJ8+NWfHqwbU0n+d4xEmhSikYHjue2U KUnxHqTHv6rY53L9ACNlD0md+riFHb3ZjyV6Bu1FeLi6UYTD3vKixP3S9WZ15dUN+2qdGOG b1FsQh/pMijcn0X2UquHFHrWwvNfDMI9CWvxfZclN4PaS41SeQ7BbTg9xr/t7BXeg/pbCKx uhk/8wzHPLpgCK7l4GS0z9q98/MCBNjwKtuSjMQpyfFl3HOisXyWj4B4p4mH/Y7u5hCwT97 0tqnGKYxMJMfP6o00tqWBbT3NvDnrXcDWbMpUw15o7lHIxfl5fjb2UspuidR9cO/EzV8OLW yG5URj52wqJE5cwTlz+f/oyLyXsktnXNf/w+gBlkYDFvx8Zs2bWDfV3gHgyLL3/FtQ8uA8P RRSY+lEohfDfa8gOdfhePLMyqP6eNeC3Lgj+oWxuWgY0CAGrx/wiFI7wiCJFOuX69dVzW/F m/X2LwrjZG2E/l+VpvfOeWsXyozEvFgi3VsJZMt2ZNmUbNBfHH3JYkRFFy1zjO56xkDbpAb aEwu6SVKSw5mfhkZsGxTYv/XsCrhEB0RvO8ZC/xfQwrbgfEJ0EZJUoj8C7m69eotA8w2wML CkpYFudghoS7kgQKQH5EgbTEmFdczDmO5F9EdSl0b61sq7ibVz01gDrYQnW0dEgLpJ4/F4l BiEy7w8zjuBRzyN/I19FLJMYReoqOspPO8xc3LZuunGfM9Ehdku+n5FsGTQYYLO799hOZI+ o5pMKEFpQMT2OZPt6QJ3Xcx6Wq8eo2jjv8W5Uae9l6JONfFrYtinmRElxoa7WE398KutreI xEC1t0X2R8j//t3ZTkmCUtsfhLSMae8IxFG6LaIhGU9IBvjD8egoDCjNDH0LN2BtUg2aV37 BzrOIQEg== X-QQ-XMRINFO: MPJ6Tf5t3I/ycC2BItcBVIA= X-QQ-RECHKSPAM: 0 Content-Type: text/plain; charset="utf-8" Comments in file include/linux/shrinker.h says that `count_objects` of `struct shrinker` should return SHRINK_EMPTY when there are no objects to free. > 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: Chen Linxuan Reviewed-by: Gao Xiang --- fs/erofs/zutil.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/erofs/zutil.c b/fs/erofs/zutil.c index 0dd65cefce33..83fbcab70a92 100644 --- a/fs/erofs/zutil.c +++ b/fs/erofs/zutil.c @@ -243,7 +243,7 @@ void erofs_shrinker_unregister(struct super_block *sb) static unsigned long erofs_shrink_count(struct shrinker *shrink, struct shrink_control *sc) { - return atomic_long_read(&erofs_global_shrink_cnt); + return atomic_long_read(&erofs_global_shrink_cnt) ?: SHRINK_EMPTY; } =20 static unsigned long erofs_shrink_scan(struct shrinker *shrink, --=20 2.43.0