[PATCH net] net: sundance: balance PCI enable on cleanup
From: Myeonghun Pak
Date: Mon Sep 14 2026 - 21:13:05 EST
sundance_probe1() enables the PCI device, but subsequent failure paths
and sundance_remove1() never release the enable reference.
Use pcim_enable_device() to disable the device after existing network,
DMA, mapping and region cleanup on probe failure or driver detach.
The imbalance is already present in the initial Git import.
This issue was identified during our ongoing static-analysis research
while reviewing kernel code.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Cc: stable@xxxxxxxxxxxxxxx
Assisted-by: LLM
Co-developed-by: Ijae Kim <ae878000@xxxxxxxxx>
Signed-off-by: Ijae Kim <ae878000@xxxxxxxxx>
Signed-off-by: Myeonghun Pak <mhun512@xxxxxxxxx>
---
drivers/net/ethernet/dlink/sundance.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/dlink/sundance.c b/drivers/net/ethernet/dlink/sundance.c
--- a/drivers/net/ethernet/dlink/sundance.c
+++ b/drivers/net/ethernet/dlink/sundance.c
@@ -510,7 +510,7 @@
int phy, phy_end, phy_idx = 0;
__le16 addr[ETH_ALEN / 2];
- if (pci_enable_device(pdev))
+ if (pcim_enable_device(pdev))
return -EIO;
pci_set_master(pdev);