Hi Greg,

I'm sorryt.  This one was buggy.  We did a revert of it in commit
bd28899dd34f ("Revert "macsec: missing dev_put() on error in
macsec_newlink()"").

You have queued for 4.8 as well.

regards,
dan carpenter

On Mon, May 28, 2018 at 12:01:11PM +0200, Greg Kroah-Hartman wrote:
> 4.14-stable review patch.  If anyone has any objections, please let me know.
> 
> ------------------
> 
> From: Dan Carpenter <[email protected]>
> 
> [ Upstream commit 5dcd8400884cc4a043a6d4617e042489e5d566a9 ]
> 
> 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]>
> Signed-off-by: David S. Miller <[email protected]>
> Signed-off-by: Sasha Levin <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> ---
>  drivers/net/macsec.c |    5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> --- a/drivers/net/macsec.c
> +++ b/drivers/net/macsec.c
> @@ -3248,7 +3248,7 @@ static int macsec_newlink(struct net *ne
>  
>       err = netdev_upper_dev_link(real_dev, dev);
>       if (err < 0)
> -             goto unregister;
> +             goto put_dev;
>  
>       /* need to be already registered so that ->init has run and
>        * the MAC addr is set
> @@ -3284,7 +3284,8 @@ del_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;
>  }
> 

Reply via email to