Lucene search

K
vulnrichmentLinuxVULNRICHMENT:CVE-2024-38597
HistoryJun 19, 2024 - 1:45 p.m.

CVE-2024-38597 eth: sungem: remove .ndo_poll_controller to avoid deadlocks

2024-06-1913:45:46
Linux
github.com
2
linux kernel
vulnerability
eth sungem
.ndo_poll_controller
deadlock
netpoll
gem_poll_controller
napi
interrupts

AI Score

6.7

Confidence

Low

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial

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

eth: sungem: remove .ndo_poll_controller to avoid deadlocks

Erhard reports netpoll warnings from sungem:

netpoll_send_skb_on_dev(): eth0 enabled interrupts in poll (gem_start_xmit+0x0/0x398)
WARNING: CPU: 1 PID: 1 at net/core/netpoll.c:370 netpoll_send_skb+0x1fc/0x20c

gem_poll_controller() disables interrupts, which may sleep.
We can’t sleep in netpoll, it has interrupts disabled completely.
Strangely, gem_poll_controller() doesn’t even poll the completions,
and instead acts as if an interrupt has fired so it just schedules
NAPI and exits. None of this has been necessary for years, since
netpoll invokes NAPI directly.

AI Score

6.7

Confidence

Low

SSVC

Exploitation

none

Automatable

no

Technical Impact

partial