[e1000 netdev-2.6 6/6] handle register_netdev failure
From: Feldman, Scott <hidden>
Date: 2004-02-22 07:39:40
* driver not handling failures of register_netdev [Stephen Hemminger (shemminger@osdl.org)] ------------ diff -Naurp netdev-2.6/drivers/net/e1000/e1000_main.c netdev-2.6/drivers/net/e1000.mod/e1000_main.c
--- netdev-2.6/drivers/net/e1000/e1000_main.c 2004-02-20 14:09:07.000000000 -0800
+++ netdev-2.6/drivers/net/e1000.mod/e1000_main.c 2004-02-20 14:09:55.000000000 -0800@@ -68,7 +68,7 @@ char e1000_driver_name[] = "e1000"; char e1000_driver_string[] = "Intel(R) PRO/1000 Network Driver"; -char e1000_driver_version[] = "5.2.30.1-k1"; +char e1000_driver_version[] = "5.2.30.1-k2"; char e1000_copyright[] = "Copyright (c) 1999-2004 Intel Corporation."; /* e1000_pci_tbl - PCI Device ID Table
@@ -529,7 +529,8 @@ e1000_probe(struct pci_dev *pdev, INIT_WORK(&adapter->tx_timeout_task, (void (*)(void *))e1000_tx_timeout_task, netdev); - register_netdev(netdev); + if((err = register_netdev(netdev))) + goto err_register; /* we're going to reset, so assume we have no link for now */
@@ -574,6 +575,7 @@ e1000_probe(struct pci_dev *pdev, cards_found++; return 0; +err_register: err_sw_init: err_eeprom: iounmap(adapter->hw.hw_addr);