CVE-2023-53287

usb: cdns3: Put the cdns set active part outside the spin lock

Medium · published September 16, 2025

CVSS v3.1
5.5
EPSS
0%
Percentile
3.7
In the wild
Unconfirmed
What it is

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

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00148 · 3.7th percentile
Published
2025-09-16T08:11Z
EPSS history
Timeline
  • 16 SEP 08:11Z
    usb: cdns3: Put the cdns set active part outside the spin lock
    cvelistv5