From b37e0c619dc231f292ed199f50c18f5bf508e16d Mon Sep 17 00:00:00 2001 From: Vasiliy Kulikov Date: Tue, 28 Sep 2010 21:08:11 +0400 Subject: [PATCH] staging: wlags49_h2: use free_netdev(netdev) instead of kfree() Freeing netdev without free_netdev() leads to net, tx leaks. I might lead to dereferencing freed pointer. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) @@ struct net_device* dev; @@ -kfree(dev) +free_netdev(dev) Signed-off-by: Vasiliy Kulikov Signed-off-by: Greg Kroah-Hartman --- drivers/staging/wlags49_h2/wl_netdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/wlags49_h2/wl_netdev.c b/drivers/staging/wlags49_h2/wl_netdev.c index e2a7ad05e545..954becee40d6 100644 --- a/drivers/staging/wlags49_h2/wl_netdev.c +++ b/drivers/staging/wlags49_h2/wl_netdev.c @@ -1586,7 +1586,7 @@ void wl_wds_device_dealloc( struct wl_private *lp ) dev_wds->flags &= ~( IFF_UP | IFF_RUNNING ); } - kfree( dev_wds ); + free_netdev(dev_wds); lp->wds_port[count].dev = NULL; } } -- 2.20.1