From patchwork Tue Oct 31 14:07:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chengming Zhou X-Patchwork-Id: 13441582 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 77AB7C4332F for ; Tue, 31 Oct 2023 14:09:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 17FE66B030E; Tue, 31 Oct 2023 10:09:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 12E936B030F; Tue, 31 Oct 2023 10:09:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F11656B0310; Tue, 31 Oct 2023 10:09:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id DC80C6B030E for ; Tue, 31 Oct 2023 10:09:25 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 87165B5CAF for ; Tue, 31 Oct 2023 14:09:24 +0000 (UTC) X-FDA: 81405939048.30.9B58059 Received: from out-184.mta1.migadu.com (out-184.mta1.migadu.com [95.215.58.184]) by imf13.hostedemail.com (Postfix) with ESMTP id 8D36220027 for ; Tue, 31 Oct 2023 14:09:22 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=r1MiH4vM; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf13.hostedemail.com: domain of chengming.zhou@linux.dev designates 95.215.58.184 as permitted sender) smtp.mailfrom=chengming.zhou@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1698761362; 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:in-reply-to:references:references:dkim-signature; bh=WNirFUhouaQ2FdRmy2RjQgkCONe7ugTNtD0fPI9SkvQ=; b=iznIbvBOFckbaGSWQ4gHd/XwvwvmtWFKh747Ca9fVo38QIh4dbasDsPHKmkrXsXOsoRJ0M Eb6tXPGwTYcsrrBUNbSTk8etkgOokjjftNBlFCR1aL5Qjo8SOvGHtrjWvnIhAWeVs83bvX LHooFavsN6Qv0b8a2jhsfvjrlVjGdbI= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=r1MiH4vM; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf13.hostedemail.com: domain of chengming.zhou@linux.dev designates 95.215.58.184 as permitted sender) smtp.mailfrom=chengming.zhou@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1698761362; a=rsa-sha256; cv=none; b=rQtHaTqQp7RN514tEqG1k+ODRKoGggKsZt4T49M0ubCLrjp5YDzHxMUvPe3z3BQrOrzI2u +f/nIfYqO8onm5d/Ud0ej+xUwP6GNHguXKzq/BGkDl3NvuzBVlO+nKOcuFkPHtDHi+0snq uxBYnXLaK9Q+8Vlt2T7rYAZfBQOLtiU= 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=1698761361; 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: in-reply-to:in-reply-to:references:references; bh=WNirFUhouaQ2FdRmy2RjQgkCONe7ugTNtD0fPI9SkvQ=; b=r1MiH4vM84Jj3nwHog6emae9i1zx3YqzKMYp0IBEloU7g/8tB45Y1H9zMFiMKQbkD/H0Qe VuvBkAF8ea4irChfcbAhAq0tXL092g71ipfL7eKZwrga14ekhl47LZcRSrMGn4jQOfzSeP bhCSvGRNAWF820iIR0MuX+4oZgKIP/E= From: chengming.zhou@linux.dev To: vbabka@suse.cz, cl@linux.com, penberg@kernel.org, willy@infradead.org Cc: rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, roman.gushchin@linux.dev, 42.hyeyoo@gmail.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, chengming.zhou@linux.dev, Chengming Zhou Subject: [RFC PATCH v4 8/9] slub: Rename all *unfreeze_partials* functions to *put_partials* Date: Tue, 31 Oct 2023 14:07:40 +0000 Message-Id: <20231031140741.79387-9-chengming.zhou@linux.dev> In-Reply-To: <20231031140741.79387-1-chengming.zhou@linux.dev> References: <20231031140741.79387-1-chengming.zhou@linux.dev> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Stat-Signature: ag6fjuy1nbnnfyziaewramsas1qu148t X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 8D36220027 X-HE-Tag: 1698761362-656888 X-HE-Meta: U2FsdGVkX1/kyEUmhQbkwLh8L2jPVfygnDwbenlHwJwGfdx2ikm2/RM5+3kPHGHybFg70dM4f0BQTG4vF1Sp2/c0epeZhtFFWgt7ksICTGBK54D25MWu9zN9+YVzABB5/C6QqE/R/RnlBdYX/8gfOIHMNVThIQ9HgjlxxlxFQVPFvfHzgcrhCLvKgjFoyutO1a5SspxYBR1bJIo1cG59kTLRdu2h/lAanzkTLahf/G+GGPDdEg3ZKWsQlaXpMlkG23Xnw61yYRFbiJwdsvZkIVMnCTqUdYlmHHhc27fWvXloO41o2uoRrQYGq07cHOK5+pP2ICGwIaoVNhCXuScwrZQzv97M0UpHzkq/9eSDXq87p8dz39FDZsaAofKiaoqKum83pqsWlo2xqujrlaTgl25KZzOsIoIINQeDCfXbW5u4r6qHFGQ7KAJq9AoR/V1lvGZdQ2l5GXT/G0Ia0PgAytya1TzZEDLCTVzyDdT//qij5lVOh9tPLIUwbHjivDqAi9mtIyxcYjRa/qwAAozY7jILt/W5sYY8xcFJ+B4MhIcc4F7tq8J6NSjLJnsRs8IbMsXskHvZrn8yLIESP9otJ5JhmCEGbNg4KT58ohmwXMqoJlq3yCewQhtNdPWDazxzt1UcQycTlA/t8u7rCUVVhdspY0b1DxxsUa+zsP+lCgIK4DG7uBEUTe7iAUEuYdNa3p2oq/t/vLi+IHGaUmBU2Z3F0M21mnV9/PszTXVYkc6Kec/d07uePSLvGjS6CtkmPprQ4rfLmfQpaV3cKFPMFBlV8S1P5GdC2viqszZ9fKEVp2FvVsIX0mtfVudHP66xb334XUPYr2I3rN0ZVEwurYqWyhinHVRtkGyCJ8Uxtgx0cxX0epvKULLG/QOrYmcmkAzwTDdF0ck8HpPuyTW24y6xQ36Z60DdfvnuHMyOOXpiM4Z2ejbPSmMVEAZkrKDYZ8PciIKwbG57ZQSzgAf w0kQTIvM LqAs9S+oeSNWXUQ+zW8+Uq0XhTqHbcdZ3foE8JlsJpGKDr+lV0lelhw4vs6Gjw7aHt7svLCx88uglY2LHPV+ztZ34cNnbdrVNbIuVJXFqBIIAlyL6VkIcrphj0jsaMVadiKyq2maTfzwT3XSEDKam0vS8ARMIYXSd+6KIFGiNLbfOKBLp8qhmeWxA+AZbphhvjliIOVPNTY9MuvgXuYo3SPDioATkOQRxAnlB5RRFfvvA5uJ6XE3iQI6MtY2ZAoXX1xJg 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: From: Chengming Zhou Since all partial slabs on the CPU partial list are not frozen anymore, we don't unfreeze when moving cpu partial slabs to node partial list, it's better to rename these functions. Signed-off-by: Chengming Zhou Reviewed-by: Vlastimil Babka --- mm/slub.c | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/mm/slub.c b/mm/slub.c index c429f8baba5f..bb7368047103 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -2549,7 +2549,7 @@ static void deactivate_slab(struct kmem_cache *s, struct slab *slab, } #ifdef CONFIG_SLUB_CPU_PARTIAL -static void __unfreeze_partials(struct kmem_cache *s, struct slab *partial_slab) +static void put_partials_node(struct kmem_cache *s, struct slab *partial_slab) { struct kmem_cache_node *n = NULL, *n2 = NULL; struct slab *slab, *slab_to_discard = NULL; @@ -2591,9 +2591,9 @@ static void __unfreeze_partials(struct kmem_cache *s, struct slab *partial_slab) } /* - * Unfreeze all the cpu partial slabs. + * Put all the cpu partial slabs to the node partial list. */ -static void unfreeze_partials(struct kmem_cache *s) +static void put_partials(struct kmem_cache *s) { struct slab *partial_slab; unsigned long flags; @@ -2604,11 +2604,11 @@ static void unfreeze_partials(struct kmem_cache *s) local_unlock_irqrestore(&s->cpu_slab->lock, flags); if (partial_slab) - __unfreeze_partials(s, partial_slab); + put_partials_node(s, partial_slab); } -static void unfreeze_partials_cpu(struct kmem_cache *s, - struct kmem_cache_cpu *c) +static void put_partials_cpu(struct kmem_cache *s, + struct kmem_cache_cpu *c) { struct slab *partial_slab; @@ -2616,7 +2616,7 @@ static void unfreeze_partials_cpu(struct kmem_cache *s, c->partial = NULL; if (partial_slab) - __unfreeze_partials(s, partial_slab); + put_partials_node(s, partial_slab); } /* @@ -2629,7 +2629,7 @@ static void unfreeze_partials_cpu(struct kmem_cache *s, static void put_cpu_partial(struct kmem_cache *s, struct slab *slab, int drain) { struct slab *oldslab; - struct slab *slab_to_unfreeze = NULL; + struct slab *slab_to_put = NULL; unsigned long flags; int slabs = 0; @@ -2644,7 +2644,7 @@ static void put_cpu_partial(struct kmem_cache *s, struct slab *slab, int drain) * per node partial list. Postpone the actual unfreezing * outside of the critical section. */ - slab_to_unfreeze = oldslab; + slab_to_put = oldslab; oldslab = NULL; } else { slabs = oldslab->slabs; @@ -2660,17 +2660,17 @@ static void put_cpu_partial(struct kmem_cache *s, struct slab *slab, int drain) local_unlock_irqrestore(&s->cpu_slab->lock, flags); - if (slab_to_unfreeze) { - __unfreeze_partials(s, slab_to_unfreeze); + if (slab_to_put) { + put_partials_node(s, slab_to_put); stat(s, CPU_PARTIAL_DRAIN); } } #else /* CONFIG_SLUB_CPU_PARTIAL */ -static inline void unfreeze_partials(struct kmem_cache *s) { } -static inline void unfreeze_partials_cpu(struct kmem_cache *s, - struct kmem_cache_cpu *c) { } +static inline void put_partials(struct kmem_cache *s) { } +static inline void put_partials_cpu(struct kmem_cache *s, + struct kmem_cache_cpu *c) { } #endif /* CONFIG_SLUB_CPU_PARTIAL */ @@ -2712,7 +2712,7 @@ static inline void __flush_cpu_slab(struct kmem_cache *s, int cpu) stat(s, CPUSLAB_FLUSH); } - unfreeze_partials_cpu(s, c); + put_partials_cpu(s, c); } struct slub_flush_work { @@ -2740,7 +2740,7 @@ static void flush_cpu_slab(struct work_struct *w) if (c->slab) flush_slab(s, c); - unfreeze_partials(s); + put_partials(s); } static bool has_cpu_slab(int cpu, struct kmem_cache *s) @@ -3171,7 +3171,7 @@ static void *___slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node, if (unlikely(!node_match(slab, node) || !pfmemalloc_match(slab, gfpflags))) { slab->next = NULL; - __unfreeze_partials(s, slab); + put_partials_node(s, slab); continue; }