ASoC: rockchip: rockchip_pdm: Handle runtime PM resume failures in set_fmt
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 4.15, 4.20, 5.1, 5.10.271, 5.15.222, and 4 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: ASoC: rockchip: rockchip_pdm: Handle runtime PM resume failures in set_fmt rockchip_pdm_set_fmt() calls pm_runtime_get_sync() before accessing hardware registers, but ignores its return value. If the runtime resume fails, the function continues to perform register accesses while the device state is undefined. Replace pm_runtime_get_sync() with pm_runtime_resume_and_get() and return early on failure to avoid unpowered register accesses.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in 105ea8b7a29b473cbe3aa1e542997700c98e3adc; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in aa48db0257ed4cdb52f922d32872dcc8d201925e; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in 52b77346cf66174ab9bc34504729cd686a9e29b1; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in 7f0fd754c708785c31b067dd98649e3ec9b8fd72; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in a9cc27a4a9b5fe013e152841fd8408061fa2312f; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in b2b5c2ca5a4924271fa86d75a252de32fa285375; From c85064435fe7a216ec0f0238ef2b8f7cd850a450 · fixed in ee7b5f7b39332febf917f9ebf212842cc9379815; From 4.14.118 · fixed in 4.15; From 4.19.42 · fixed in 4.20; From 5.0.15 · fixed in 5.1
- Linux Linux
5.1
- KernelLinux
From 5.1.0 · fixed in 5.10.271; From 5.11.0 · fixed in 5.15.222; From 5.16.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.111; From 6.13.0 · fixed in 6.18.53
References 7
git.kernel.org
- stable/c/105ea8b7a29b473cbe3aa1e542997700c98e3adc
- stable/c/aa48db0257ed4cdb52f922d32872dcc8d201925e
- stable/c/52b77346cf66174ab9bc34504729cd686a9e29b1
- stable/c/7f0fd754c708785c31b067dd98649e3ec9b8fd72
- stable/c/a9cc27a4a9b5fe013e152841fd8408061fa2312f
- stable/c/b2b5c2ca5a4924271fa86d75a252de32fa285375
- stable/c/ee7b5f7b39332febf917f9ebf212842cc9379815