[PATCH 0/3] arm64: topology: Improve cpuinfo_avg_freq for ARM64

Bowen Yu yubowen8 at huawei.com
Mon Nov 3 23:55:41 PST 2025


This series addresses several issues in CPU avgfreq reporting:

Patch 1:
- Implements direct frequency calculation using AMU counters:
  freq = (core_cycles_delta * timer_freq) / (const_cycles_delta 
  * HZ_PER_KHZ)
- Eliminates precision loss from SCHED_CAPACITY_SHIFT bit-shifting

Patch 2:
- Resolves unreliable cpuinfo_avg_freq behavior during idle periods
- Replaces invalid returns with governor's current frequency as fallback
  value when all CPUs in policy are idle

Patch 3:
- Removes redundant housekeeping_cpu() check

Bowen Yu (3):
  arm64: topology: Improve AMU-based frequency calculation
  arm64: topology: Use current freq in governor for idle cpus in
    cpuinfo_avg_freq
  arm64: topology: Remove redundant housekeeping_cpu() checks in
    arch_freq_get_on_cpu

 arch/arm64/kernel/topology.c | 40 +++++++++++++++---------------------
 1 file changed, 17 insertions(+), 23 deletions(-)

-- 
2.33.0




More information about the linux-arm-kernel mailing list