From: Devendra Naga Date: Fri, 5 Oct 2012 21:29:21 +0000 (+0200) Subject: r8169: call netif_napi_del at errpaths and at driver unload X-Git-Tag: firefly_0821_release~7541^2~496 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=f074e600bf3cd644c3bdbcbc238dce53952d34cb;p=firefly-linux-kernel-4.4.55.git r8169: call netif_napi_del at errpaths and at driver unload commit ad1be8d345416a794dea39761a374032aa471a76 upstream. When register_netdev fails, the init'ed NAPIs by netif_napi_add must be deleted with netif_napi_del, and also when driver unloads, it should delete the NAPI before unregistering netdevice using unregister_netdev. Signed-off-by: Devendra Naga Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 5b94dc969e90..f7a56f465b08 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -3706,6 +3706,7 @@ out: return rc; err_out_msi_4: + netif_napi_del(&tp->napi); rtl_disable_msi(pdev, tp); iounmap(ioaddr); err_out_free_res_3: @@ -3731,6 +3732,8 @@ static void __devexit rtl8169_remove_one(struct pci_dev *pdev) cancel_delayed_work_sync(&tp->task); + netif_napi_del(&tp->napi); + unregister_netdev(dev); rtl_release_firmware(tp);