Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc68580d authored by Vasiliy Kulikov's avatar Vasiliy Kulikov Committed by David S. Miller
Browse files

s390: 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: default avatarDavid S. Miller <davem@davemloft.net>
parent 8d879de8
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1154,7 +1154,7 @@ static struct net_device *ctcm_init_netdevice(struct ctcm_priv *priv)
				dev_fsm, dev_fsm_len, GFP_KERNEL);
	if (priv->fsm == NULL) {
		CTCMY_DBF_DEV(SETUP, dev, "init_fsm error");
		kfree(dev);
		free_netdev(dev);
		return NULL;
	}
	fsm_newstate(priv->fsm, DEV_STATE_STOPPED);
@@ -1165,7 +1165,7 @@ static struct net_device *ctcm_init_netdevice(struct ctcm_priv *priv)
		grp = ctcmpc_init_mpc_group(priv);
		if (grp == NULL) {
			MPC_DBF_DEV(SETUP, dev, "init_mpc_group error");
			kfree(dev);
			free_netdev(dev);
			return NULL;
		}
		tasklet_init(&grp->mpc_tasklet2,