CVE-2023-53656
Unknown Unknown - Not Provided
BaseFortify

Publication date: 2025-10-07

Last updated on: 2026-02-03

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: drivers/perf: hisi: Don't migrate perf to the CPU going to teardown The driver needs to migrate the perf context if the current using CPU going to teardown. By the time calling the cpuhp::teardown() callback the cpu_online_mask() hasn't updated yet and still includes the CPU going to teardown. In current driver's implementation we may migrate the context to the teardown CPU and leads to the below calltrace: ... [ 368.104662][ T932] task:cpuhp/0 state:D stack: 0 pid: 15 ppid: 2 flags:0x00000008 [ 368.113699][ T932] Call trace: [ 368.116834][ T932] __switch_to+0x7c/0xbc [ 368.120924][ T932] __schedule+0x338/0x6f0 [ 368.125098][ T932] schedule+0x50/0xe0 [ 368.128926][ T932] schedule_preempt_disabled+0x18/0x24 [ 368.134229][ T932] __mutex_lock.constprop.0+0x1d4/0x5dc [ 368.139617][ T932] __mutex_lock_slowpath+0x1c/0x30 [ 368.144573][ T932] mutex_lock+0x50/0x60 [ 368.148579][ T932] perf_pmu_migrate_context+0x84/0x2b0 [ 368.153884][ T932] hisi_pcie_pmu_offline_cpu+0x90/0xe0 [hisi_pcie_pmu] [ 368.160579][ T932] cpuhp_invoke_callback+0x2a0/0x650 [ 368.165707][ T932] cpuhp_thread_fun+0xe4/0x190 [ 368.170316][ T932] smpboot_thread_fn+0x15c/0x1a0 [ 368.175099][ T932] kthread+0x108/0x13c [ 368.179012][ T932] ret_from_fork+0x10/0x18 ... Use function cpumask_any_but() to find one correct active cpu to fixes this issue.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-10-07
Last Modified
2026-02-03
Generated
2026-05-07
AI Q&A
2025-10-07
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel From 6.4 (inc) to 6.4.4 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability occurs in the Linux kernel's hisi driver for performance monitoring. When a CPU is going to be taken offline (teardown), the driver attempts to migrate the performance context to another CPU. However, due to timing issues, the migration may mistakenly target the CPU that is being taken offline because the system's CPU online mask has not yet been updated. This leads to a call trace error and potential malfunction. The fix involves using the function cpumask_any_but() to correctly select an active CPU that is not being taken offline for migrating the performance context.


How can this vulnerability impact me? :

This vulnerability can cause system instability or crashes related to performance monitoring on affected Linux systems using the hisi driver. Specifically, it may lead to errors during CPU teardown operations, potentially impacting system reliability and performance monitoring accuracy.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability can be detected by monitoring the system logs for specific kernel call traces related to the hisi_pcie_pmu driver during CPU teardown. Look for messages similar to the provided call trace involving functions like __switch_to, __schedule, mutex_lock, perf_pmu_migrate_context, and hisi_pcie_pmu_offline_cpu. Commands such as 'dmesg | grep -i hisi_pcie_pmu' or 'journalctl -k | grep -i hisi_pcie_pmu' can help identify these traces.


What immediate steps should I take to mitigate this vulnerability?

Immediate mitigation involves updating the Linux kernel to a version where this issue is fixed. The fix involves changing the driver to use the function cpumask_any_but() to correctly select an active CPU during perf context migration, avoiding migration to a CPU that is going to teardown. Until the update is applied, monitoring for the issue and avoiding CPU teardown operations that trigger this condition may help reduce risk.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart