macsec: missing dev_put() on error in macsec_newlink()
We moved the dev_hold(real_dev); call earlier in the function but forgot
to update the error paths.
Fixes: 0759e552bc
("macsec: fix negative refcnt on parent link")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e0645d9b96
commit
5dcd840088
|
@ -3277,7 +3277,7 @@ static int macsec_newlink(struct net *net, struct net_device *dev,
|
|||
|
||||
err = netdev_upper_dev_link(real_dev, dev, extack);
|
||||
if (err < 0)
|
||||
goto unregister;
|
||||
goto put_dev;
|
||||
|
||||
/* need to be already registered so that ->init has run and
|
||||
* the MAC addr is set
|
||||
|
@ -3316,7 +3316,8 @@ static int macsec_newlink(struct net *net, struct net_device *dev,
|
|||
macsec_del_dev(macsec);
|
||||
unlink:
|
||||
netdev_upper_dev_unlink(real_dev, dev);
|
||||
unregister:
|
||||
put_dev:
|
||||
dev_put(real_dev);
|
||||
unregister_netdevice(dev);
|
||||
return err;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue