Home

Description

In the Linux kernel, the following vulnerability has been resolved: scsi: ufs: core: Fix data race in CPU latency PM QoS request handling The cpu_latency_qos_add/remove/update_request interfaces lack internal synchronization by design, requiring the caller to ensure thread safety. The current implementation relies on the 'pm_qos_enabled' flag, which is insufficient to prevent concurrent access and cannot serve as a proper synchronization mechanism. This has led to data races and list corruption issues. A typical race condition call trace is: [Thread A] ufshcd_pm_qos_exit() --> cpu_latency_qos_remove_request() --> cpu_latency_qos_apply(); --> pm_qos_update_target() --> plist_del <--(1) delete plist node --> memset(req, 0, sizeof(*req)); --> hba->pm_qos_enabled = false; [Thread B] ufshcd_devfreq_target --> ufshcd_devfreq_scale --> ufshcd_scale_clks --> ufshcd_pm_qos_update <--(2) pm_qos_enabled is true --> cpu_latency_qos_update_request --> pm_qos_update_target --> plist_del <--(3) plist node use-after-free Introduces a dedicated mutex to serialize PM QoS operations, preventing data races and ensuring safe access to PM QoS resources, including sysfs interface reads.

PUBLISHED Reserved 2025-04-16 | Published 2025-11-12 | Updated 2025-11-12 | Assigner Linux

Product status

Default status
unaffected

2777e73fc154e2e87233bdcc0e2402b33815198e (git) before d9df61afb8d23c475f1be3c714da2c34c156ab01
affected

2777e73fc154e2e87233bdcc0e2402b33815198e (git) before 79dde5f7dc7c038eec903745dc1550cd4139980e
affected

Default status
affected

6.9
affected

Any version before 6.9
unaffected

6.17.3 (semver)
unaffected

6.18-rc1 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/d9df61afb8d23c475f1be3c714da2c34c156ab01

git.kernel.org/...c/79dde5f7dc7c038eec903745dc1550cd4139980e

cve.org (CVE-2025-40130)

nvd.nist.gov (CVE-2025-40130)

Download JSON