Loading include/net/if_inet6.h +1 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ struct ipv6_devstat { struct inet6_dev { struct net_device *dev; netdevice_tracker dev_tracker; struct list_head addr_list; Loading net/ipv6/addrconf.c +2 −2 Original line number Diff line number Diff line Loading @@ -405,13 +405,13 @@ static struct inet6_dev *ipv6_add_dev(struct net_device *dev) if (ndev->cnf.forwarding) dev_disable_lro(dev); /* We refer to the device */ dev_hold(dev); dev_hold_track(dev, &ndev->dev_tracker, GFP_KERNEL); if (snmp6_alloc_dev(ndev) < 0) { netdev_dbg(dev, "%s: cannot allocate memory for statistics\n", __func__); neigh_parms_release(&nd_tbl, ndev->nd_parms); dev_put(dev); dev_put_track(dev, &ndev->dev_tracker); kfree(ndev); return ERR_PTR(err); } Loading net/ipv6/addrconf_core.c +1 −1 Original line number Diff line number Diff line Loading @@ -263,7 +263,7 @@ void in6_dev_finish_destroy(struct inet6_dev *idev) #ifdef NET_REFCNT_DEBUG pr_debug("%s: %s\n", __func__, dev ? dev->name : "NIL"); #endif dev_put(dev); dev_put_track(dev, &idev->dev_tracker); if (!idev->dead) { pr_warn("Freeing alive inet6 device %p\n", idev); return; Loading Loading
include/net/if_inet6.h +1 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ struct ipv6_devstat { struct inet6_dev { struct net_device *dev; netdevice_tracker dev_tracker; struct list_head addr_list; Loading
net/ipv6/addrconf.c +2 −2 Original line number Diff line number Diff line Loading @@ -405,13 +405,13 @@ static struct inet6_dev *ipv6_add_dev(struct net_device *dev) if (ndev->cnf.forwarding) dev_disable_lro(dev); /* We refer to the device */ dev_hold(dev); dev_hold_track(dev, &ndev->dev_tracker, GFP_KERNEL); if (snmp6_alloc_dev(ndev) < 0) { netdev_dbg(dev, "%s: cannot allocate memory for statistics\n", __func__); neigh_parms_release(&nd_tbl, ndev->nd_parms); dev_put(dev); dev_put_track(dev, &ndev->dev_tracker); kfree(ndev); return ERR_PTR(err); } Loading
net/ipv6/addrconf_core.c +1 −1 Original line number Diff line number Diff line Loading @@ -263,7 +263,7 @@ void in6_dev_finish_destroy(struct inet6_dev *idev) #ifdef NET_REFCNT_DEBUG pr_debug("%s: %s\n", __func__, dev ? dev->name : "NIL"); #endif dev_put(dev); dev_put_track(dev, &idev->dev_tracker); if (!idev->dead) { pr_warn("Freeing alive inet6 device %p\n", idev); return; Loading