From: Ben Dooks Date: Mon, 7 May 2007 11:13:25 +0000 (+0000) Subject: DM9000: fix use of kfree() on net device X-Git-Tag: firefly_0821_release~29505^2~32 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=9fd9f9b669ca71f7b3a7709d02d305c3d428d2fe;p=firefly-linux-kernel-4.4.55.git DM9000: fix use of kfree() on net device The DM9000 network driver is calling kfree() on an netdev causing the system to oops if the probe fails. The right thing to do is call free_netdev(). Thanks to Russell King for spotting this. Signed-off-by: Ben Dooks Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c index 8cc1174e7f64..0e338539b822 100644 --- a/drivers/net/dm9000.c +++ b/drivers/net/dm9000.c @@ -601,7 +601,7 @@ dm9000_probe(struct platform_device *pdev) printk("%s: not found (%d).\n", CARDNAME, ret); dm9000_release_board(pdev, db); - kfree(ndev); + free_netdev(ndev); return ret; } @@ -1193,7 +1193,7 @@ dm9000_drv_remove(struct platform_device *pdev) unregister_netdev(ndev); dm9000_release_board(pdev, (board_info_t *) ndev->priv); - kfree(ndev); /* free device structure */ + free_netdev(ndev); /* free device structure */ PRINTK1("clean_module() exit\n");