From patchwork Sun Feb 4 03:06:02 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chengming Zhou X-Patchwork-Id: 13544434 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3D157C4828F for ; Sun, 4 Feb 2024 03:06:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3614E6B0082; Sat, 3 Feb 2024 22:06:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3135F6B0083; Sat, 3 Feb 2024 22:06:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 200E26B0085; Sat, 3 Feb 2024 22:06:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 0A79A6B0082 for ; Sat, 3 Feb 2024 22:06:28 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id B6856A03FC for ; Sun, 4 Feb 2024 03:06:26 +0000 (UTC) X-FDA: 81752633172.07.F6D6FD8 Received: from out-182.mta1.migadu.com (out-182.mta1.migadu.com [95.215.58.182]) by imf26.hostedemail.com (Postfix) with ESMTP id E7A75140009 for ; Sun, 4 Feb 2024 03:06:24 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=none; spf=pass (imf26.hostedemail.com: domain of chengming.zhou@linux.dev designates 95.215.58.182 as permitted sender) smtp.mailfrom=chengming.zhou@linux.dev; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=bytedance.com (policy=quarantine) ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1707015985; a=rsa-sha256; cv=none; b=2jxpchsdpPTBr3vERN/6OpVlyAkTLU32tY13Hf74cX79g2p22/Hqj/Da4UhY7Zc7JI+N3N dAWBltxJmxx+ncrvOjzAXoHUxqKkBQyoND/83AdrNHmKCmcJAX+He71GqPR26gxrHe4fOS s4jf4fy1D5i2aL8ZpxKNZ500PXeY22c= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=none; spf=pass (imf26.hostedemail.com: domain of chengming.zhou@linux.dev designates 95.215.58.182 as permitted sender) smtp.mailfrom=chengming.zhou@linux.dev; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=bytedance.com (policy=quarantine) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1707015985; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=YgqDFb0TLK4KgJhm0uuyYO3PUvleKCq5Wo0I0TWEijQ=; b=B8siCgRv7r5dbFLy4XmTxPmhFR9hiZ7IblLr72I6ujOJpARFqaDHGHGdU66ooR0aGEcf3Y Lw7uueru4urSwDfufI7VGTR0vY7ez8IP8t+0EWqpYJdk7RoEN+Rdj9Exq4UBKM1astYNC+ 9iD1IE7o1AdwqKHIogYrguIe6MyasUY= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Chengming Zhou Date: Sun, 04 Feb 2024 03:06:02 +0000 Subject: [PATCH v2 4/6] mm/zswap: remove duplicate_entry debug value MIME-Version: 1.0 Message-Id: <20240201-b4-zswap-invalidate-entry-v2-4-99d4084260a0@bytedance.com> References: <20240201-b4-zswap-invalidate-entry-v2-0-99d4084260a0@bytedance.com> In-Reply-To: <20240201-b4-zswap-invalidate-entry-v2-0-99d4084260a0@bytedance.com> To: Nhat Pham , Yosry Ahmed , Andrew Morton , Johannes Weiner Cc: linux-mm@kvack.org, Nhat Pham , Chengming Zhou , linux-kernel@vger.kernel.org, Yosry Ahmed , Johannes Weiner X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: E7A75140009 X-Stat-Signature: yieb3zfyukit14wef1pc4pgbcud7nz5q X-Rspamd-Pre-Result: action=add header; module=dmarc; Action set by DMARC X-Rspam: Yes X-HE-Tag: 1707015984-918533 X-HE-Meta: U2FsdGVkX18GDWmAZDbEvOr1BmGsOEP8rlyFuxqwZqX1sbflQ2TFxTCx7mL6324rfomlVa8mCKzMU0TPkRY99DkvakDXQ5XjwO1NrKziY4X/+sTpwhtGez9MtzaY7Ur2Kov2o3incDvxnad+AOSuFWBsniujlh3ylffgu8Wmq1IIHIu5RVAY1fLo96WwMCxMoXPvEUgpxVjauYfHZP4r/D4YmhKzz9JpLfmEWl1Q2IJuM4zxhk2CeEQ7z3wl1k1qXz54paa7X94AvhUJ89iBJP47REV9rLinbqTh0sb8p/pm1ISmjDS/5x+PoA1dlN17lTK2x8FcP43a7SARnxV2FtHN3lKfFCsrXtPxt+LYYxZYz2e/8VUSpkLnoCQPcHEWQj7kbdiRhRkholA0v2uz/6C/dMUd7w8X67iRJezcBzLf48M+k9qRmT/fdn+YfUd81HgUBUnvKtn0xG6csnr0rSku3PwwEjpvcOQXb7kaFOYllCysQKRCE6rHKPlWU+lAi62ZXNriFit7rzx/Gx9ZSIh1lM23mRf4dBRISNKFSS3akKQ8N2tFgo+xdqv0ciPkoI+b01OwvkvZIXvpXK9RrLIzMmD0s+1LaQ60NlzvaOx5ZexbwsELqWXHGI0u+pts1sJ/BFbi9QQxznt2dNH/bhXbVHGn+j2lJHRDx6I/vbd+K3deXv9LhvwVGMueeKEN+Gs9ILQXB98YKxaHGCeLjuNlf5xlnb7onQGJ3QSTewAGHcp5LbizwdbMSdt3MQDwj+lajGm5UziJcr2w/sQbwI66DS4ERvYdPQi2wsq2l0fPoZd4KIyJVYRvngiSCN9q6FurcegJXpguPHriyuoERtaUU44NNTnmqn2KSNGdajBmQTI2WX21++9iXorYVsZBE83pR8z760IjP+5Sd8SCYHYKD/8rfjTn4Sj3ecZCDqOdRVYKwFTmZOi33IdlYfkcNQ9N7HBa9oRPk9puc++ TrM9KmJU cMfNTqRHE8EiJTlIiyEOvTUPNFf8nGb+CSWdC8VtWgNLmrc2iVz43vbA+UNMLLVFqdymGZbebSOXv0Ce6FCeOMWhIAsQ7qpSffJeQzMMLZfybD1V7WOlqza3v1K1DzkTBFXHGajUFBzG9sxDGE17zr6JlzKjQm8xFE76Q4illcCAWjj5kNwlyaQ1FlYneEEPpW7WfN53gOiCbIY3bczDxleVEdQZQ+uzmvdsNzGLdilPuuXfc4lRlhEdWDxWoHDgQMA4MsbQDXzwVAT+V8bYHXT+z2mPEj6B4Jad+SZWjZ4kCUlNRey2UYuzJKAGUQktHzMBxUFF7NrxibuKiUES/tYfpzBu7FyQvL5LAX09KsNNZzUHv6ZZJd32TPim3lGoXQww8L6LWJscOH++OSMYZBzLRrhsnvCSfbZXL4oOAPXqUzfQr/7gRBylt0D2kVoBCPk+gDP30LMAp6hnrOtJnWn2ftr01i/tT4WHOA0Gla5/CBXykEN/1gpPPq5EheghwGlufRt9y1lYIXfo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: cat /sys/kernel/debug/zswap/duplicate_entry 2086447 When testing, the duplicate_entry value is very high, but no warning message in the kernel log. From the comment of duplicate_entry "Duplicate store was encountered (rare)", it seems something goes wrong. Actually it's incremented in the beginning of zswap_store(), which found its zswap entry has already on the tree. And this is a normal case, since the folio could leave zswap entry on the tree after swapin, later it's dirtied and swapout/zswap_store again, found its original zswap entry. So duplicate_entry should be only incremented in the real bug case, which already have "WARN_ON(1)", it looks redundant to count bug case, so this patch just remove it. Acked-by: Johannes Weiner Reviewed-by: Nhat Pham Acked-by: Yosry Ahmed Signed-off-by: Chengming Zhou --- mm/zswap.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/mm/zswap.c b/mm/zswap.c index 4381b7a2d4d6..3fbb7e2c8b8d 100644 --- a/mm/zswap.c +++ b/mm/zswap.c @@ -71,8 +71,6 @@ static u64 zswap_reject_compress_poor; static u64 zswap_reject_alloc_fail; /* Store failed because the entry metadata could not be allocated (rare) */ static u64 zswap_reject_kmemcache_fail; -/* Duplicate store was encountered (rare) */ -static u64 zswap_duplicate_entry; /* Shrinker work queue */ static struct workqueue_struct *shrink_wq; @@ -1571,10 +1569,8 @@ bool zswap_store(struct folio *folio) */ spin_lock(&tree->lock); entry = zswap_rb_search(&tree->rbroot, offset); - if (entry) { + if (entry) zswap_invalidate_entry(tree, entry); - zswap_duplicate_entry++; - } spin_unlock(&tree->lock); objcg = get_obj_cgroup_from_folio(folio); if (objcg && !obj_cgroup_may_zswap(objcg)) { @@ -1661,7 +1657,6 @@ bool zswap_store(struct folio *folio) */ while (zswap_rb_insert(&tree->rbroot, entry, &dupentry) == -EEXIST) { WARN_ON(1); - zswap_duplicate_entry++; zswap_invalidate_entry(tree, dupentry); } if (entry->length) { @@ -1822,8 +1817,6 @@ static int zswap_debugfs_init(void) zswap_debugfs_root, &zswap_reject_compress_poor); debugfs_create_u64("written_back_pages", 0444, zswap_debugfs_root, &zswap_written_back_pages); - debugfs_create_u64("duplicate_entry", 0444, - zswap_debugfs_root, &zswap_duplicate_entry); debugfs_create_u64("pool_total_size", 0444, zswap_debugfs_root, &zswap_pool_total_size); debugfs_create_atomic_t("stored_pages", 0444,