[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250814072853.3426386-1-zhenglifeng1@huawei.com>
Date: Thu, 14 Aug 2025 15:28:50 +0800
From: Lifeng Zheng <zhenglifeng1@...wei.com>
To: <catalin.marinas@....com>, <will@...nel.org>, <rafael@...nel.org>,
<viresh.kumar@...aro.org>, <beata.michalska@....com>, <sudeep.holla@....com>
CC: <linux-arm-kernel@...ts.infradead.org>, <linux-pm@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linuxarm@...wei.com>,
<jonathan.cameron@...wei.com>, <vincent.guittot@...aro.org>,
<yangyicong@...ilicon.com>, <zhanjie9@...ilicon.com>, <lihuisong@...wei.com>,
<yubowen8@...wei.com>, <linhongye@...artners.com>, <zhenglifeng1@...wei.com>
Subject: [PATCH v4 0/3] arm64: topology: Setup AMU FIE for online CPUs only
Solve a problem that causes CPUs Setup AMU FIE failed in a corner case,
even though they're eligible.
Changelog:
v4:
- change the function's name in patch 2 from
'cpufreq_cpu_get_raw_no_check' to 'cpufreq_cpu_policy'
- use only one line in the function body of cpufreq_cpu_policy()
- use cpus mask instead of related_cpus when calling arch_set_freq_scale()
in cpufreq.c
- add a warning when the freq_counters_valid() check fails in
cpuhp_topology_online()
v3:
- add a patch to optimize amu_fie_setup()
- add a patch to add a function to get cpufreq policy without checking if
the CPU is online
- discard the reuse of amu_fie_setup() in cpuhp_topology_online() and keep
all the new logic in cpuhp_topology_online()
- test only the CPU which is going online in cpuhp_topology_online()
- when the freq_counters_valid() check fails, not only clear the scale
freq source but also clear all the related CPUs from amu_fie_cpus mask
- add some comments
v2:
- keep init_amu_fie_notifier for setting up AMU FIE when the cpufreq
policy is being created
- set up AMU FIE only for online CPUs instead of related_cpus in
init_amu_fie_callback()
- check and set all the online CPUs in the same policy when hotplug one
- clear scale freq source for all the online CPUs in the same policy to
avoid using different source of the freq scale
---
Discussions of previous version:
v1: https://lore.kernel.org/all/20250607094533.416368-1-zhenglifeng1@huawei.com/
v2: https://lore.kernel.org/all/20250725102813.1404322-1-zhenglifeng1@huawei.com/
v3: https://lore.kernel.org/all/20250805093330.3715444-1-zhenglifeng1@huawei.com/
Lifeng Zheng (3):
arm64: topology: Set scale freq source only for the CPUs that have not
been set before
cpufreq: Add a new function to get cpufreq policy without checking if
the CPU is online
arm64: topology: Setup AMU FIE for online CPUs only
arch/arm64/kernel/topology.c | 56 ++++++++++++++++++++++++++++++++++--
drivers/cpufreq/cpufreq.c | 10 +++++--
include/linux/cpufreq.h | 1 +
3 files changed, 62 insertions(+), 5 deletions(-)
--
2.33.0
Powered by blists - more mailing lists