[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240418104949.3606645-6-dawei.li@shingroup.cn>
Date: Thu, 18 Apr 2024 18:49:49 +0800
From: Dawei Li <dawei.li@...ngroup.cn>
To: davem@...emloft.net,
andreas@...sler.com
Cc: sparclinux@...r.kernel.org,
linux-kernel@...r.kernel.org,
Dawei Li <dawei.li@...ngroup.cn>
Subject: [PATCH 5/5] sparc: Remove on-stack cpumask var
In general it's preferable to avoid placing cpumasks on the stack, as
for large values of NR_CPUS these can consume significant amounts of
stack space and make stack overflows more likely.
Since the cpumask var resides in __init function, which means it's free
of any concurrenct access, it can be safely marked with static to get
rid of allocation on stack.
while at it, mark it with __initdata to keep it from persistently
consumed memory.
Signed-off-by: Dawei Li <dawei.li@...ngroup.cn>
---
arch/sparc/mm/init_64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c
index 1ca9054d9b97..088d9c103dcc 100644
--- a/arch/sparc/mm/init_64.c
+++ b/arch/sparc/mm/init_64.c
@@ -1438,7 +1438,7 @@ static int __init numa_attach_mlgroup(struct mdesc_handle *md, u64 grp,
static int __init numa_parse_mdesc_group(struct mdesc_handle *md, u64 grp,
int index)
{
- cpumask_t mask;
+ static cpumask_t mask __initdata;
int cpu;
numa_parse_mdesc_group_cpus(md, grp, &mask);
--
2.27.0
Powered by blists - more mailing lists