Public bug reported: SRU Justification:
[Impact] On ARM platforms such as BlueField-3, enabling the CPPC Frequency-Invariance Engine (FIE) spawns a background kernel thread (cppc_fie) that periodically polls CPPC performance counters through the PCC channel. This behavior significantly increases CPU utilization (2–11% as observed by top) even under idle conditions. This issue appears when firmware exposes CPPC capabilities (via _CPC and PCCT tables) to the kernel—triggering the cppc_cpufreq driver to load. The problem exists in kernels before v6.1 and is fixed upstream by: Commit ae2df91 (“ACPI: CPPC: Disable FIE if registers in PCC regions”) https://github.com/torvalds/linux/commit/ae2df912d1a557a3548be83da20851ac55f42ab3 Without this fix, enabling FIE on systems (by enabling CONFIG_ACPI_CPPC_CPUFREQ_FIE) where CPPC registers reside in PCC regions results in unnecessary and continuous mailbox accesses, causing measurable CPU load increases. [Fix] Set CONFIG_ACPI_CPPC_CPUFREQ_FIE=n to disable the FIE kernel thread. This avoids the high CPU utilization bug while retaining the core CPPC functionality (real-time CPU frequency reporting via CONFIG_ACPI_CPPC_CPUFREQ). [Test Case] 1. Boot a BlueField-3 (or similar ARM system) running kernel 5.15.x with CONFIG_ACPI_CPPC_CPUFREQ_FIE=y. o Observe with top or mpstat that CPU utilization remains elevated (2–11%) even at idle. o Verify that /proc/sched_debug or ps -ef | grep cppc_fie shows active cppc_fie threads. 2. Rebuild kernel with CONFIG_ACPI_CPPC_CPUFREQ_FIE=n. o Reboot and confirm no cppc_fie kernel threads are running. o Check that CPU utilization returns to baseline levels while /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq continues to report real-time frequency correctly. This validates that disabling FIE eliminates the overhead but preserves the real-frequency reporting feature. [Regression Potential] Low. FIE is an optional optimization that adjusts scaling responsiveness. Disabling it only affects systems using PCC-based CPPC regions; others (with direct register access) are unaffected. The main CPPC frequency control and reporting remain fully functional. ** Affects: linux-bluefield (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2127016 Title: Disable CPPC FIE in Jammy kernel To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-bluefield/+bug/2127016/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
