macsec: missing dev_put() on error in macsec_newlink()
Subsystems (4)
PATCH 1/1 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 0759e552bce7 ("macsec: fix negative refcnt on parent link")
Signed-off-by Dan Carpenter <[email protected]>
drivers/net/macsec.c +3 -2
@@ -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; }
David Miller
maintainerFrom: Dan Carpenter <[email protected]>
Date: Wed, 21 Mar 2018 11:09:01 +0300
Quoted 5 lines
We moved the
dev_hold(real_dev); call earlier in the function but forgot to update the error paths.Fixes 0759e552bce7 ("macsec: fix negative refcnt on parent link")Signed-off-by Dan Carpenter <[email protected]>
Applied and queued up for -stable, thanks Dan.