[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d80b3b3d-4f26-4dc1-93c7-78aa5f268cce@amd.com>
Date: Wed, 16 Apr 2025 00:38:47 +0530
From: Shivank Garg <shivankg@....com>
To: Baoquan He <bhe@...hat.com>, linux-mm@...ck.org
Cc: akpm@...ux-foundation.org, urezki@...il.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/5] mm/vmalloc.c: change purge_ndoes as local static
variable
On 4/15/2025 8:09 AM, Baoquan He wrote:
> Static variable 'purge_ndoes' is defined in global scope, while it's
> only used in function __purge_vmap_area_lazy(). It mainly serves to
> avoid memory allocation repeatedly, especially when NR_CPUS is big.
>
> While a local static variable can also satisfy the demand, and can
> improve code readibility. Hence move its definition into
> __purge_vmap_area_lazy().
>
> Signed-off-by: Baoquan He <bhe@...hat.com>
> ---
> mm/vmalloc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/vmalloc.c b/mm/vmalloc.c
> index 6ee7fc2ec986..aca1905d3397 100644
> --- a/mm/vmalloc.c
> +++ b/mm/vmalloc.c
> @@ -2128,7 +2128,6 @@ static DEFINE_MUTEX(vmap_purge_lock);
>
> /* for per-CPU blocks */
> static void purge_fragmented_blocks_allcpus(void);
> -static cpumask_t purge_nodes;
>
> static void
> reclaim_list_global(struct list_head *head)
> @@ -2261,6 +2260,7 @@ static bool __purge_vmap_area_lazy(unsigned long start, unsigned long end,
> {
> unsigned long nr_purged_areas = 0;
> unsigned int nr_purge_helpers;
> + static cpumask_t purge_nodes;
> unsigned int nr_purge_nodes;
> struct vmap_node *vn;
> int i;
Reviewed-by: Shivank Garg <shivankg@....com>
Tested-by: Shivank Garg <shivankg@....com>
Powered by blists - more mailing lists