summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorHeiko Carstens <hca@linux.ibm.com>2021-02-17 07:13:02 +0100
committerVasily Gorbik <gor@linux.ibm.com>2021-02-24 00:31:22 +0100
commit62c8dca9e194326802b43c60763f856d782b225c (patch)
tree360fe02c74850482dfa203e4dc2fe36df9195a10 /arch
parents390/smp: consolidate locking for smp_rescan() (diff)
downloadlinux-62c8dca9e194326802b43c60763f856d782b225c.tar.xz
linux-62c8dca9e194326802b43c60763f856d782b225c.zip
s390/smp: __smp_rescan_cpus() - move cpumask away from stack
Avoid a potentially large stack frame and overflow by making "cpumask_t avail" a static variable. There is no concurrent access due to the existing locking. Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/s390/kernel/smp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c
index 9fa85c927a0c..3d838b7bbb3b 100644
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@ -775,7 +775,7 @@ static int smp_add_core(struct sclp_core_entry *core, cpumask_t *avail,
static int __smp_rescan_cpus(struct sclp_core_info *info, bool early)
{
struct sclp_core_entry *core;
- cpumask_t avail;
+ static cpumask_t avail;
bool configured;
u16 core_id;
int nr, i;