Skip to content

Commit

Permalink
net: fix a leak in register_netdevice()
Browse files Browse the repository at this point in the history
We have to free "dev->name_node" on this error path.

Fixes: ff92741 ("net: introduce name_node struct to be used in hashlist")
Reported-by: syzbot+6e13e65ffbaa33757bcb@syzkaller.appspotmail.com
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Dan Carpenter authored and David S. Miller committed Dec 3, 2019
1 parent 56e7a2f commit 42c17fa
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions net/core/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -9246,7 +9246,7 @@ int register_netdevice(struct net_device *dev)
if (ret) {
if (ret > 0)
ret = -EIO;
goto out;
goto err_free_name;
}
}

Expand Down Expand Up @@ -9361,12 +9361,12 @@ int register_netdevice(struct net_device *dev)
return ret;

err_uninit:
if (dev->name_node)
netdev_name_node_free(dev->name_node);
if (dev->netdev_ops->ndo_uninit)
dev->netdev_ops->ndo_uninit(dev);
if (dev->priv_destructor)
dev->priv_destructor(dev);
err_free_name:
netdev_name_node_free(dev->name_node);
goto out;
}
EXPORT_SYMBOL(register_netdevice);
Expand Down

0 comments on commit 42c17fa

Please sign in to comment.