CVE-2023-53287: usb: cdns3: Put the cdns set active part outside the spin lock
In the Linux kernel, the following vulnerability has been resolved:
usb: cdns3: Put the cdns set active part outside the spin lock
The device may be scheduled during the resume process,
so this cannot appear in atomic operations. Since
pm_runtime_set_active will resume suppliers, put set
active outside the spin lock, which is only used to
protect the struct cdns data structure, otherwise the
kernel will report the following warning:
BUG: sleeping function called from invalid context at drivers/base/power/runtime.c:1163
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 651, name: sh
preempt_count: 1, expected: 0
RCU nest depth: 0, expected: 0
CPU: 0 PID: 651 Comm: sh Tainted: G WC 6.1.20 #1
Hardware name: Freescale i.MX8QM MEK (DT)
Call trace:
dump_backtrace.part.0+0xe0/0xf0
show_stack+0x18/0x30
dump_stack_lvl+0x64/0x80
dump_stack+0x1c/0x38
__might_resched+0x1fc/0x240
__might_sleep+0x68/0xc0
__pm_runtime_resume+0x9c/0xe0
rpm_get_suppliers+0x68/0x1b0
__pm_runtime_set_status+0x298/0x560
cdns_resume+0xb0/0x1c0
cdns3_controller_resume.isra.0+0x1e0/0x250
cdns3_plat_resume+0x28/0x40
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel availability issue in the Cadence USB3 driver. During resume, the driver could call power-management code while holding a spin lock, causing a kernel warning and potential disruption. The provided data shows local, low-privilege attack requirements and no confidentiality or integrity impact.
Executive priority
Treat as a moderate operational stability issue. Prioritize patching for embedded or appliance fleets where USB controller resume failures could affect uptime. It is not presented as data theft or privilege escalation in the supplied sources.
Technical view
The cdns3 resume path called pm_runtime_set_active inside a spin lock. That operation may sleep because it can resume suppliers, which is invalid in atomic context. The fix moves the set-active operation outside the lock that protects the cdns data structure.
Likely exposure
Exposure is most likely on Linux systems using the cdns3 USB controller driver on affected kernel versions or downstream kernels carrying the vulnerable code. The trace references an i.MX8QM platform, but the affected product in the sources is Linux, not a specific device list.
Exploitation context
The CVSS vector is local, low complexity, low privileges, and no user interaction. The impact is availability only. The source bundle marks KEV as false and provides no evidence of active exploitation or public exploit use.
Researcher notes
The key condition is sleeping-capable runtime PM work inside a spin-locked resume path. Validation should focus on code provenance and backport presence, because vendor kernels may not map cleanly to upstream version numbers.
Mitigation direction
Update to a vendor-supported Linux kernel containing the cdns3 runtime PM fix.
Prioritize affected systems that use the cdns3 USB controller driver.
Check downstream BSP or distribution advisories for backported fixes.
If patch timing is unclear, request vendor guidance before deploying workarounds.
Validation and detection
Inventory kernel versions across Linux systems and embedded platforms.
Confirm whether the cdns3 driver is built, loaded, or used by hardware.
Verify the kernel contains one of the referenced stable fix commits or an equivalent backport.
Review kernel logs for the documented invalid-context power-management warning during resume.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2023-53287 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.