static void vrf_dev_uninit(struct net_device *dev) { struct net_vrf *vrf = netdev_priv(dev); struct net_device *port_dev; struct list_head *iter; vrf_rtable_destroy(vrf); vrf_rt6_destroy(vrf); netdev_for_each_lower_dev(dev, port_dev, iter) vrf_del_slave(dev, port_dev); free_percpu(dev->dstats); dev->dstats = NULL; }
static void vrf_dev_uninit(struct net_device *dev) { struct net_vrf *vrf = netdev_priv(dev); struct slave_queue *queue = &vrf->queue; struct list_head *head = &queue->all_slaves; struct slave *slave, *next; vrf_rtable_destroy(vrf); vrf_rt6_destroy(vrf); list_for_each_entry_safe(slave, next, head, list) vrf_del_slave(dev, slave->dev); free_percpu(dev->dstats); dev->dstats = NULL; }