CVE-2025-40347

CVE-2025-40347

High · published December 16, 2025

CVSS v3.1
7.5
EPSS
1%
Percentile
43.8
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

net: enetc: fix the deadlock of enetc_mdio_lock

After applying the workaround for err050089, the LS1028A platform

experiences RCU stalls on RT kernel. This issue is caused by the

recursive acquisition of the read lock enetc_mdio_lock. Here list some

of the call stacks identified under the enetc_poll path that may lead to

a deadlock:

enetc_poll

-> enetc_lock_mdio

-> enetc_clean_rx_ring OR napi_complete_done

-> napi_gro_receive

-> enetc_start_xmit

-> enetc_lock_mdio

-> enetc_map_tx_buffs

-> enetc_unlock_mdio

-> enetc_unlock_mdio

After enetc_poll acquires the read lock, a higher-priority writer attempts

to acquire the lock, causing preemption. The writer detects that a

read lock is already held and is scheduled out. However, readers under

enetc_poll cannot acquire the read lock again because a writer is already

waiting, leading to a thread hang.

Currently, the deadlock is avoided by adjusting enetc_lock_mdio to prevent

recursive lock acquisition.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00528 · 43.8th percentile
Published
2025-12-16T19:15Z
References (5)
EPSS history
Timeline
  • 16 DEC 13:30Z
    net: enetc: fix the deadlock of enetc_mdio_lock
    cvelistv5