[SRU][F][PATCH 0/2] CVE-2024-38597

Massimiliano Pellizzer massimiliano.pellizzer at canonical.com
Fri Nov 15 12:30:27 UTC 2024


[Impact]

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.

[Fix]

Noble: 	Fixed
Jammy: 	Fixed
Focal: 	Backported both the fix commit and a follow-up from mainline
Bionic: Sent to ESM ML
Xenial: Sent to ESM ML

[Test Case]

Compile tested only.

[Where problems could occur]

The fix affects the ethernet sungem driver. An issue with this fix may
lead to system instability when interacting with the Sun GEM ethernet
interface, potentially disrupting network connectivity.

Jakub Kicinski (1):
  eth: sungem: remove .ndo_poll_controller to avoid deadlocks

Wei Fang (1):
  net: fec: remove .ndo_poll_controller to avoid deadlocks

 drivers/net/ethernet/freescale/fec_main.c | 26 -----------------------
 drivers/net/ethernet/sun/sungem.c         | 14 ------------
 2 files changed, 40 deletions(-)

-- 
2.43.0




More information about the kernel-team mailing list