diff options
Diffstat (limited to 'drivers/net/ethernet/realtek/8139too.c')
-rw-r--r-- | drivers/net/ethernet/realtek/8139too.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/realtek/8139too.c b/drivers/net/ethernet/realtek/8139too.c index 6d0b9dfac313..78bb4ceb1cdd 100644 --- a/drivers/net/ethernet/realtek/8139too.c +++ b/drivers/net/ethernet/realtek/8139too.c | |||
@@ -787,10 +787,10 @@ static struct net_device *rtl8139_init_board(struct pci_dev *pdev) | |||
787 | if (rc) | 787 | if (rc) |
788 | goto err_out; | 788 | goto err_out; |
789 | 789 | ||
790 | disable_dev_on_err = 1; | ||
790 | rc = pci_request_regions (pdev, DRV_NAME); | 791 | rc = pci_request_regions (pdev, DRV_NAME); |
791 | if (rc) | 792 | if (rc) |
792 | goto err_out; | 793 | goto err_out; |
793 | disable_dev_on_err = 1; | ||
794 | 794 | ||
795 | pci_set_master (pdev); | 795 | pci_set_master (pdev); |
796 | 796 | ||
@@ -1110,6 +1110,7 @@ static int rtl8139_init_one(struct pci_dev *pdev, | |||
1110 | return 0; | 1110 | return 0; |
1111 | 1111 | ||
1112 | err_out: | 1112 | err_out: |
1113 | netif_napi_del(&tp->napi); | ||
1113 | __rtl8139_cleanup_dev (dev); | 1114 | __rtl8139_cleanup_dev (dev); |
1114 | pci_disable_device (pdev); | 1115 | pci_disable_device (pdev); |
1115 | return i; | 1116 | return i; |
@@ -1124,6 +1125,7 @@ static void rtl8139_remove_one(struct pci_dev *pdev) | |||
1124 | assert (dev != NULL); | 1125 | assert (dev != NULL); |
1125 | 1126 | ||
1126 | cancel_delayed_work_sync(&tp->thread); | 1127 | cancel_delayed_work_sync(&tp->thread); |
1128 | netif_napi_del(&tp->napi); | ||
1127 | 1129 | ||
1128 | unregister_netdev (dev); | 1130 | unregister_netdev (dev); |
1129 | 1131 | ||