CVE-2023-54259

soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow

N/A
Published: December 30, 2025 at 12:15 PM UTC
Updated: June 17, 2026 at 06:47 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
N/A
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow This reverts commit 443a98e649b4 ("soundwire: bus: use pm_runtime_resume_and_get()") Change calls to pm_runtime_resume_and_get() back to pm_runtime_get_sync(). This fixes a usage count underrun caused by doing a pm_runtime_put() even though pm_runtime_resume_and_get() returned an error. The three affected functions ignore -EACCES error from trying to get pm_runtime, and carry on, including a put at the end of the function. But pm_runtime_resume_and_get() does not increment the usage count if it returns an error. So in the -EACCES case you must not call pm_runtime_put(). The documentation for pm_runtime_get_sync() says: "Consider using pm_runtime_resume_and_get() ... as this is likely to result in cleaner code." In this case I don't think it results in cleaner code because the pm_runtime_put() at the end of the function would have to be conditional on the return value from pm_runtime_resume_and_get() at the top of the function. pm_runtime_get_sync() doesn't have this problem because it always increments the count, so always needs a put. The code can just flow through and do the pm_runtime_put() unconditionally.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

5.19 ≤ v < 6.1.305.19 ≤ v < 6.3.45.19 ≤ v < 6.4443a98e649b469b4e6a2832799853a5764ef90025.19
Vendor states this is fixed in 203aa4374c433159f163acde2d0bd4118f23bbaf (fixed)
Vendor states this is fixed in 4e5e9da139c007dfc397a159093b4c4187ee67fa (fixed)
Vendor states this is fixed in e9537962519e88969f5f69cd0571eb4f6984403c (fixed)
Vendor states this is fixed in 5.19 (unaffected)
Vendor states this is fixed in 6.1.30 (unaffected)
Vendor states this is fixed in 6.3.4 (unaffected)
Vendor states this is fixed in 6.4 (unaffected)

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

Quick Info

StatusDEFERRED

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card