CVE-2026-72406: net: sungem: fix probe error cleanup
In the Linux kernel, the following vulnerability has been resolved:
net: sungem: fix probe error cleanup
geminitone() calls gemremoveone() when registernetdev() fails. gemremoveone() unregisters and frees resources owned by the netdevice, including the DMA block, MMIO mapping, PCI regions, and the netdevice itself. geminitone() then falls through to its own cleanup labels and frees the same resources again.
Keep the registernetdev() error path in geminitone(): clear drvdata so PM/remove paths do not see a half-registered device, remove the NAPI instance added during probe, and let the existing cleanup labels release the resources once.
The issue was found by a local static-analysis checker for probe error paths. The reported path was manually inspected before sending this fix.
Compile-tested with CONFIGSUNGEM=y. Runtime testing was not performed because no sungem hardware is available.