From mboxrd@z Thu Jan 1 00:00:00 1970 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 18C84CA0ECA for ; Tue, 12 Sep 2023 07:30:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8EE296B00BF; Tue, 12 Sep 2023 03:30:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 89DC76B00C0; Tue, 12 Sep 2023 03:30:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 78CD66B00C1; Tue, 12 Sep 2023 03:30:56 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 6A9EE6B00BF for ; Tue, 12 Sep 2023 03:30:56 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 44C501CA7D5 for ; Tue, 12 Sep 2023 07:30:56 +0000 (UTC) X-FDA: 81227123712.10.55E1238 Received: from mail-lf1-f43.google.com (mail-lf1-f43.google.com [209.85.167.43]) by imf18.hostedemail.com (Postfix) with ESMTP id D44C21C001C for ; Tue, 12 Sep 2023 07:30:52 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=WWIZlQxN; spf=pass (imf18.hostedemail.com: domain of urezki@gmail.com designates 209.85.167.43 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1694503853; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=9TtWYBN3Js8MaUa6ket6IpV+Bas2UrWYZ7r9GmcPHzk=; b=akdfeTU0Shipc21EQFCB8CMV3TVpcAYQ1KXOEU5CAd0TftSbnFnf5S6eXD8FxDTsWgBxeZ ZFz0DztRiNrJPTGvhkXtiD/iSjRe57x6xMGvLgIw8m5eR5Iok8POInnoc6/Fbma3C5p/LH xxD6jJ218iQWWS0Z1SsIsct5tcXfmaI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1694503853; a=rsa-sha256; cv=none; b=FeMMeduxBs6CqvMm9nRfkSYzJVrvVEe3zpzyooDd2Zjd8wZqnQwkyqsuevOQahwXIQFMH+ UruJK+u2czPNWuC2ah5/Mauo6IEisRU11znGMAmuDmyTdHYhyWzxgLJ/V+rCvJcJJ9WD/e YtbKZPPSEilchnLpMtrXUAUaqXyPmjM= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=WWIZlQxN; spf=pass (imf18.hostedemail.com: domain of urezki@gmail.com designates 209.85.167.43 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-lf1-f43.google.com with SMTP id 2adb3069b0e04-5007abb15e9so9009486e87.0 for ; Tue, 12 Sep 2023 00:30:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1694503851; x=1695108651; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=9TtWYBN3Js8MaUa6ket6IpV+Bas2UrWYZ7r9GmcPHzk=; b=WWIZlQxNlPC+LGPHM/DEM3q1nqyzZ7ZVQ5fGwn3oJ8qbGLzUbolF8TXycUPxWHnLEH Wn0f+4aEoWsMVJcxH0FXTVg+X+B/RYOJILqCsB7ZxYrWFWH004/83lO7TIW/fiha9JK8 DTpYQ7/uP6Qx1JVx3GJu9wPBkC0K42XIBLxbVHBidT3zS4aC9lNF3Cuc5Sfu7GTYFD4X rvEfc5oJ/Xz7fsFBjw0S4rw0DAa81PvwIgWgepkEqCtKMpUvc7JmHc+eEytI0PaMPz// l0012N761Sl/NvKw54okG8B14xzyQbM2/v/hYdJKf4i8+tTRfYyYATLfaWmIoRpFb5+o oSYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694503851; x=1695108651; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=9TtWYBN3Js8MaUa6ket6IpV+Bas2UrWYZ7r9GmcPHzk=; b=GVLk4DWDSLf2tusRuDumhj5waA8BWHU2AYHTkL1NILGuTjeNreyOOV7a4SYJptVDJ5 wNOx8OIaCCgm2+aZ3CLuNrx6sLpcDYWx/cyHncfX84SmHKXs+Alw3RX/3GhsaSySfctc lTbO23aRhErhmrrGWLkjkrQVX/ClPRqsfFLvhge+MFvizH5wPvKR1eN+qd6Mp0lez8dM /TpzUe6uyAVbAe/LVPUxzxRAaZ0iKmCTYJ34Wo8oVrJAFcd+R3MR28NiH9zoPZY7aMiU ozrS84sZKU+ZlUCLsSnC+iZzWeRqJH7a1RHVEBLAgOW1NvzHbsz8ZqxUweCnSyVzP1xU jecg== X-Gm-Message-State: AOJu0YzTv9sPmEPQSItFHMupjDRepRNlKrwdvzOO9I1bXYdoUJUoR/xT khiivIYex4B3wTsgq7SlHzM= X-Google-Smtp-Source: AGHT+IFRU1BCT1/fxyolNXviRB2kjmrF3gbcVkz2ZdPqlwGiM/W8fLNYBMB1va+dE1XIWrPYf8LuHQ== X-Received: by 2002:a05:6512:15a3:b0:4fb:7cea:882a with SMTP id bp35-20020a05651215a300b004fb7cea882amr11611840lfb.3.1694503850597; Tue, 12 Sep 2023 00:30:50 -0700 (PDT) Received: from pc636 ([155.137.26.201]) by smtp.gmail.com with ESMTPSA id d25-20020ac244d9000000b004ff947bea2asm1653864lfm.54.2023.09.12.00.30.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Sep 2023 00:30:50 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Tue, 12 Sep 2023 09:30:47 +0200 To: Qi Zheng Cc: akpm@linux-foundation.org, david@fromorbit.com, tkhai@ya.ru, vbabka@suse.cz, roman.gushchin@linux.dev, djwong@kernel.org, brauner@kernel.org, paulmck@kernel.org, tytso@mit.edu, steven.price@arm.com, cel@kernel.org, senozhatsky@chromium.org, yujie.liu@intel.com, gregkh@linuxfoundation.org, muchun.song@linux.dev, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, Joel Fernandes , Muchun Song , rcu@vger.kernel.org Subject: Re: [PATCH v6 16/45] rcu: dynamically allocate the rcu-kfree shrinker Message-ID: References: <20230911094444.68966-1-zhengqi.arch@bytedance.com> <20230911094444.68966-17-zhengqi.arch@bytedance.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230911094444.68966-17-zhengqi.arch@bytedance.com> X-Rspamd-Queue-Id: D44C21C001C X-Rspam-User: X-Stat-Signature: bd7nro6kze3t8w5ezc3e659todgk47p4 X-Rspamd-Server: rspam03 X-HE-Tag: 1694503852-695743 X-HE-Meta: U2FsdGVkX1/pBji1YPBT4+cTSUxBFl5KuZ3DBrcqKVK5pyAWwA7rh01o+xeKkDDNnQ5diEEftPz4klavcPuetUiLIKqMhSsBpyXJ8SVOY5dF2eF82fDPypT6858eMbYeo/YtURb8RBYQ1Hbt8YFE52/xtWmjeXLsu6EEqEsMexQgX6V83JuPdRZTPnP+6Yk8arfHiKi1mPsm6wuG02nZwNaYkLRReVB8vBQPwb9iXcTieYc9UeDpvaYE6yLqx5cMcr/3Bs8Um5puL9jDVoYvyUThhsaKYMyzTKROctdtZ2AN2x6uBajb201xK18Hm4eJsgDBYBChla5pkHqqKZra0BRktJjQ2yXrHquJrPx4NoDWExO7QKTGHgOMaxWlZ3Uxnm7w91MUQDFcYcV0EzNYnJKWVGOO4dFhWDx6gktnjeRV10g0SdbCIxIzd9OWSNc5RlzERwgOnDc0rhcaloJJdij4AEe8t9vXqS8zknHYmkDVc9AUFrYWqj06Kib6CmaAgAyx2aERxnqo9zpjgn2f7KbM8xIiHPVCezQ6KV/QLpFP8u97ZU0NuqcrOYCGHB4lIfnJqjfUA6z4Uryp+UrFZpCA9Ff7DSjolm4Ep5VbseCltlH3aQxoOW3EpgEn3al9QwFubp+iBbkDZX5klKRbcmb+pi63/mZ2y1WZg+Hh5WNv6VNbmBzXr8+p62ponaOg6ni4rqjvtESWqPcXKLXpyyaFdsHMf+djpSNO323W99dsA/NR0b5os3ow13ajbZgaFffa2558OXCKn9K8d3wUchrBbvoHc1bvv1TzTyvWAfvEXumEYGfpRqOe4Dkr5TxsUz0PS+Pi0GR2mldf/fk3ZXOJy2FzajjswHif4Uayxxz7zWvcz12PjIHgm4lEwlLHBgc3ro1LtsS+QIGa9ao2Beqsec2HV7znYHPSut409YAAABA2htKltiwRIy6UgBONfMw3nVHks2TvYMXh8dV BrJb8fFP EIYF1CGGDKs/KnqjxrlK/gpYzptmd1HlxJukFxtZfBX3PioqnjswDd5/kqPAsm4Pd+EGFVnbY1R0golVML8QAX/CkU5s0AOqs1d/s0cTzlbuI2BEl9DKyAF2Q8LXGwlErSibkOjtBKlqcBV/KGvRGOvSFQdO4PuAqf+MVJwfSUBm6INO7ZBusP4YVDlHv577kVS2d8uBVJNhQ8Lha+hGQunvjRxhUAQ2ywwke0C3DeLYSXvOGSFMOdgkfy3AO0b9vCxzvQLTOITPLHSKatKCXl4M3oQwqJcmimBYn/5ySplblInpTbRPygSqDMDyE1JALKCZxDX8xmSRNQpY5kyvrf4r03OB7a+nioVb21tBVXl+KnE3sU6+5nZ1hCP6JHkyZkuHVTYwvupjyfXAzAPfhxG9uXRZ7ldne+mJ2rd3UDaPtRwJIQ5ulIkxmHn/8IQDnMLhR4XZlPM91rJ3oDV1rtfLbWuIeEII2iTQ2rB0x3IHqolyXj/oyEOOQR/2qEeAAQtybJimA4lXrzTN3xZ9lcS4+zDK3Ottn9x8Fzdxqpk5Q7Tno0JzWIhqYx94fZjk+WgDoRRsUARyyoocpyrlBpqHddTsiYFq+vlrqWyIcm7sjFytP9uIi3qJqD4l0mejUrIQn 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: On Mon, Sep 11, 2023 at 05:44:15PM +0800, Qi Zheng wrote: > Use new APIs to dynamically allocate the rcu-kfree shrinker. > > Signed-off-by: Qi Zheng > Reviewed-by: Joel Fernandes (Google) > Reviewed-by: Muchun Song > CC: rcu@vger.kernel.org > --- > kernel/rcu/tree.c | 21 ++++++++++++--------- > 1 file changed, 12 insertions(+), 9 deletions(-) > > diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c > index cb1caefa8bd0..06e2ed495c02 100644 > --- a/kernel/rcu/tree.c > +++ b/kernel/rcu/tree.c > @@ -3449,13 +3449,6 @@ kfree_rcu_shrink_scan(struct shrinker *shrink, struct shrink_control *sc) > return freed == 0 ? SHRINK_STOP : freed; > } > > -static struct shrinker kfree_rcu_shrinker = { > - .count_objects = kfree_rcu_shrink_count, > - .scan_objects = kfree_rcu_shrink_scan, > - .batch = 0, > - .seeks = DEFAULT_SEEKS, > -}; > - > void __init kfree_rcu_scheduler_running(void) > { > int cpu; > @@ -4931,6 +4924,7 @@ static void __init kfree_rcu_batch_init(void) > { > int cpu; > int i, j; > + struct shrinker *kfree_rcu_shrinker; > > /* Clamp it to [0:100] seconds interval. */ > if (rcu_delay_page_cache_fill_msec < 0 || > @@ -4962,8 +4956,17 @@ static void __init kfree_rcu_batch_init(void) > INIT_DELAYED_WORK(&krcp->page_cache_work, fill_page_cache_func); > krcp->initialized = true; > } > - if (register_shrinker(&kfree_rcu_shrinker, "rcu-kfree")) > - pr_err("Failed to register kfree_rcu() shrinker!\n"); > + > + kfree_rcu_shrinker = shrinker_alloc(0, "rcu-kfree"); > + if (!kfree_rcu_shrinker) { > + pr_err("Failed to allocate kfree_rcu() shrinker!\n"); > + return; > + } > + > + kfree_rcu_shrinker->count_objects = kfree_rcu_shrink_count; > + kfree_rcu_shrinker->scan_objects = kfree_rcu_shrink_scan; > + > + shrinker_register(kfree_rcu_shrinker); > } > > void __init rcu_init(void) > -- > 2.30.2 > Reviewed-by: Uladzislau Rezki (Sony) Makes sense to me. Thank you for improving it. -- Uladzislau Rezki