Message ID | 20230609081518.3039120-1-qi.zheng@linux.dev (mailing list archive) |
---|---|
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 F1176C7EE25 for <linux-mm@archiver.kernel.org>; Fri, 9 Jun 2023 08:17:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8D2328E0005; Fri, 9 Jun 2023 04:17:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 858DF8E0003; Fri, 9 Jun 2023 04:17:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6FB0D8E0005; Fri, 9 Jun 2023 04:17:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 600B48E0003 for <linux-mm@kvack.org>; Fri, 9 Jun 2023 04:17:03 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 34E56A014F for <linux-mm@kvack.org>; Fri, 9 Jun 2023 08:17:03 +0000 (UTC) X-FDA: 80882503926.10.C19D135 Received: from out-11.mta0.migadu.com (out-11.mta0.migadu.com [91.218.175.11]) by imf12.hostedemail.com (Postfix) with ESMTP id 53D4F40005 for <linux-mm@kvack.org>; Fri, 9 Jun 2023 08:17:01 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=hm9r9Z4V; spf=pass (imf12.hostedemail.com: domain of qi.zheng@linux.dev designates 91.218.175.11 as permitted sender) smtp.mailfrom=qi.zheng@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1686298621; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=nWHbWur0xcsiIJRNXO9BxnEFhJfaHaB29elJK86jImY=; b=J7RH30rxBm538WYwB/PCPyiCEZb7nAuM/fhXZiOVf++LcHuI5LSOQluP0Wp+/MDYXC+yTS TESasqEik7EVjCUbQA+4LlJ5Us6Vz3z8gpvoW+regumnH7DmbMtTmZ4lC8Rm73jCosKKnN kML8Tiahbo6dmwTVmCCk7PQ+x+QMGT0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686298621; a=rsa-sha256; cv=none; b=2EpOfVf+MASKJnqTGc3oII+/ShdXSvVDVM8tQrWwf2EdWw/LCAQ4IgMH/jp6VA8a9kKyfR CHWr1l+uYcNV9q62fAc5u6WzA83Rri2nKJhvE5eAdY2QoGP7WUQMaKPe6X51GLNgckcidn mZYUEyfvRtBZU0cl1vEDdyw/HTiq7Jg= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=hm9r9Z4V; spf=pass (imf12.hostedemail.com: domain of qi.zheng@linux.dev designates 91.218.175.11 as permitted sender) smtp.mailfrom=qi.zheng@linux.dev; dmarc=pass (policy=none) header.from=linux.dev X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1686298619; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=nWHbWur0xcsiIJRNXO9BxnEFhJfaHaB29elJK86jImY=; b=hm9r9Z4VbXL0q0p45qjdxq5imQrOSAOz6SqUl1eCzpaZLRAaEqtUbZNLqwHOsLS/xhrsvk F6qAXhDOx6pg63ZiJRsecHNM4ZqohscqAvlPCfzuoV/QxWl4sCGfpNTwhJUjW8YLxQGSP6 rDKDBy+yd9VO521dSPMx3hA8aLDd61s= From: Qi Zheng <qi.zheng@linux.dev> To: akpm@linux-foundation.org Cc: david@fromorbit.com, tkhai@ya.ru, roman.gushchin@linux.dev, vbabka@suse.cz, muchun.song@linux.dev, yujie.liu@intel.com, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Qi Zheng <zhengqi.arch@bytedance.com> Subject: [PATCH 0/7] revert shrinker_srcu related changes Date: Fri, 9 Jun 2023 08:15:11 +0000 Message-Id: <20230609081518.3039120-1-qi.zheng@linux.dev> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Rspamd-Queue-Id: 53D4F40005 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: iiromtra49688uy5at5xbcw6gqiigp7m X-HE-Tag: 1686298621-687318 X-HE-Meta: U2FsdGVkX19MCDLFN/KUPLWJI1kS7anpTtfBdrhtzYMIYsU+Sseh31acnhBlzv7Qmhgh6V9r1ZoYXTY6ww0AMSeajA8wiTsPlgq09AWiR6Ryca1Pbhn3dZDSN0yrs5XHULtk5mVRqcDHtcLjVS/o6biLFkxLSNZSrev5K00+klQyrJX6cvn7QUkbdaaobjx4e4vg4nVOh3dwm72DytcJxoNcyBCVzY7ig7GK47/5KPJOSShZbPesdJvV8saIKpArDzkSacbFF14WDhMljsSrtfflnWvKM4q91U2nQGrT3CSloJUUEiUhkDWSK4hN+jmub642LhgVQZcqYyPSURRnuaM3jGcGMH9Do8BREFhoTx1hYxv0hxFZeO8WwxiQDIPZSMRWmMekVS8ncOFHhEB2oeKFRgqEITmYYOPct4udkf8uNkW2VIWyfB4tnRbdGHe8lmmOMRmYt6C29DZs8Cyk3Z3nFIPMz7X06V0m4fkEQD/yCUhByhetebt57QVbtf9tq/F4gi89dnKG898Zz42hSWWHKSwq1RG/OKnC0r7F3GCNtVgeOjYUoCuT3JmN/FhCPvmbIa3WievweImGynqxxgwsL1l6I2Wt5B4aU8vCnk+y9Dixa2hS3Z4cLwOEHybbJL07ccaDRqo4GJp+tU0IFw+aq8tq08qeKmZ9Yac9ubOW1HDI0UEfbsVUMu6FkVROlQ5SQozXEmNa4ql7RViumvgcpVoZd/jBCr0Gx+7BQCzU/nP9vxKU8AM5A5vIQF2DjfHLWAfVBHJ1/ZplLvgBOJ8UWAA20TUYsat+tRebMEpRercdEisGJUYZ/rVMjtxQ/czbrsHViQ9MPrrF9fXKJRyAjmGGg71Nkq3bE53ltHgms/k2cTrchM+8UUbVEFbwsb1tgkAapa9kHNyVvaJc3x4Fcfl8mLogaVtxEjdmzDpzE+53KQDrvQds1plt9b16zfF2zyc8L5Xfr5L1mKq Ld6VIt2g 4f1RYYqA5GleGp0preNy4qSCDD+7J5yfWvWjT7pim/jZ7Gf3kkw4ahl4T45Fkn2ddvUNztx5YDzWaQ3jodO8bG9ugnV+pB0SFWNhJIvb0Uy8PZ7Ich+VN6DsATUMtX+cnqm3wQVgy99Oof76EGYSlAInn7wn5/BH1hhSPwVGCMVUZJFmj93i8q0QQ3rl4gMeGUFhIoVNOG0XHbet8MUGMlYBWyeL56jCmz4FSw72u+2OibVfbvzSUXHE3AXqQC6flinaCxruVS5hyB2w= 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: <linux-mm.kvack.org> |
Series |
revert shrinker_srcu related changes
|
expand
|
From: Qi Zheng <zhengqi.arch@bytedance.com> Hi all, Kernel test robot reports -88.8% regression in stress-ng.ramfs.ops_per_sec test case [1], which is caused by commit f95bdb700bc6 ("mm: vmscan: make global slab shrink lockless"). The root cause is that SRCU has to be careful to not frequently check for SRCU read-side critical section exits. Therefore, even if no one is currently in the SRCU read-side critical section, synchronize_srcu() cannot return quickly. That's why unregister_shrinker() has become slower. After discussion, we will try to use the refcount+RCU method [2] proposed by Dave Chinner to continue to re-implement the lockless slab shrink. So revert the shrinker_srcu related changes first. [1]. https://lore.kernel.org/lkml/202305230837.db2c233f-yujie.liu@intel.com/ [2]. https://lore.kernel.org/lkml/ZIJhou1d55d4H1s0@dread.disaster.area/ And hi Andrew, the commit c3b5cb881de6 ("mm: vmscan: move shrinker_debugfs_remove() before synchronize_srcu()") is still in the mm-unstable branch, you can drop it directly. This series is based on v6.4-rc5. Thanks, Qi Qi Zheng (7): Revert "mm: shrinkers: convert shrinker_rwsem to mutex" Revert "mm: vmscan: remove shrinker_rwsem from synchronize_shrinkers()" Revert "mm: vmscan: hold write lock to reparent shrinker nr_deferred" Revert "mm: shrinkers: make count and scan in shrinker debugfs lockless" Revert "mm: vmscan: add shrinker_srcu_generation" Revert "mm: vmscan: make memcg slab shrink lockless" Revert "mm: vmscan: make global slab shrink lockless" drivers/md/dm-cache-metadata.c | 2 +- drivers/md/dm-thin-metadata.c | 2 +- fs/super.c | 2 +- mm/shrinker_debug.c | 39 ++++++---- mm/vmscan.c | 125 +++++++++++++++------------------ 5 files changed, 82 insertions(+), 88 deletions(-)