aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szyprowski <[email protected]>2024-03-14 13:54:57 +0100
committerViresh Kumar <[email protected]>2024-03-15 11:18:54 +0530
commitd2399501c2c081eac703ca9597ceb83c7875a537 (patch)
treecc8db05864b6619f928139f0e89635582915ad33
parentad2a91086e288c9ab1d74eee57edabe08bd90471 (diff)
cpufreq: dt: always allocate zeroed cpumask
Commit 0499a78369ad ("ARM64: Dynamically allocate cpumasks and increase supported CPUs to 512") changed the handling of cpumasks on ARM 64bit, what resulted in the strange issues and warnings during cpufreq-dt initialization on some big.LITTLE platforms. This was caused by mixing OPPs between big and LITTLE cores, because OPP-sharing information between big and LITTLE cores is computed on cpumask, which in turn was not zeroed on allocation. Fix this by switching to zalloc_cpumask_var() call. Fixes: dc279ac6e5b4 ("cpufreq: dt: Refactor initialization to handle probe deferral properly") CC: [email protected] # v5.10+ Signed-off-by: Marek Szyprowski <[email protected]> Reviewed-by: Christoph Lameter (Ampere) <[email protected]> Reviewed-by: Dhruva Gole <[email protected]> Signed-off-by: Viresh Kumar <[email protected]>
-rw-r--r--drivers/cpufreq/cpufreq-dt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
index 8bd6e5e8f121..2d83bbc65dd0 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -208,7 +208,7 @@ static int dt_cpufreq_early_init(struct device *dev, int cpu)
if (!priv)
return -ENOMEM;
- if (!alloc_cpumask_var(&priv->cpus, GFP_KERNEL))
+ if (!zalloc_cpumask_var(&priv->cpus, GFP_KERNEL))
return -ENOMEM;
cpumask_set_cpu(cpu, priv->cpus);