Lines Matching +refs:dev +refs:all
174 result = ifa->ifa_dev->dev; in __ip_dev_find()
191 net_eq(dev_net(ifa->ifa_dev->dev), net)) in inet_lookup_ifaddr_rcu()
247 struct net_device *dev = idev->dev; in in_dev_finish_destroy() local
252 pr_debug("%s: %p=%s\n", __func__, idev, dev ? dev->name : "NIL"); in in_dev_finish_destroy()
254 netdev_put(dev, &idev->dev_tracker); in in_dev_finish_destroy()
262 static struct in_device *inetdev_init(struct net_device *dev) in inetdev_init() argument
272 memcpy(&in_dev->cnf, dev_net(dev)->ipv4.devconf_dflt, in inetdev_init()
275 in_dev->dev = dev; in inetdev_init()
276 in_dev->arp_parms = neigh_parms_alloc(dev, &arp_tbl); in inetdev_init()
280 dev_disable_lro(dev); in inetdev_init()
282 netdev_hold(dev, &in_dev->dev_tracker, GFP_KERNEL); in inetdev_init()
295 if (dev->flags & IFF_UP) in inetdev_init()
299 rcu_assign_pointer(dev->ip_ptr, in_dev); in inetdev_init()
310 struct net_device *dev; in inetdev_destroy() local
315 dev = in_dev->dev; in inetdev_destroy()
326 RCU_INIT_POINTER(dev->ip_ptr, NULL); in inetdev_destroy()
330 arp_ifdown(dev); in inetdev_destroy()
547 inet_hash_insert(dev_net(in_dev->dev), ifa); in __inet_insert_ifa()
566 static int inet_set_ifa(struct net_device *dev, struct in_ifaddr *ifa) in inet_set_ifa() argument
568 struct in_device *in_dev = __in_dev_get_rtnl(dev); in inet_set_ifa()
593 struct net_device *dev; in inetdev_by_index() local
597 dev = dev_get_by_index_rcu(net, ifindex); in inetdev_by_index()
598 if (dev) in inetdev_by_index()
599 in_dev = rcu_dereference_rtnl(dev->ip_ptr); in inetdev_by_index()
627 .imr_ifindex = ifa->ifa_dev->dev->ifindex, in ip_mc_autojoin_config()
834 struct net_device *dev; in rtm_to_ifaddr() local
856 dev = __dev_get_by_index(net, ifm->ifa_index); in rtm_to_ifaddr()
858 if (!dev) { in rtm_to_ifaddr()
863 in_dev = __in_dev_get_rtnl(dev); in rtm_to_ifaddr()
900 memcpy(ifa->ifa_label, dev->name, IFNAMSIZ); in rtm_to_ifaddr()
1040 struct net_device *dev; in devinet_ioctl() local
1094 dev = __dev_get_by_name(net, ifr->ifr_name); in devinet_ioctl()
1095 if (!dev) in devinet_ioctl()
1101 in_dev = __in_dev_get_rtnl(dev); in devinet_ioctl()
1167 ret = dev_change_flags(dev, ifr->ifr_flags, NULL); in devinet_ioctl()
1184 memcpy(ifa->ifa_label, dev->name, IFNAMSIZ); in devinet_ioctl()
1196 if (!(dev->flags & IFF_POINTOPOINT)) { in devinet_ioctl()
1199 if ((dev->flags & IFF_BROADCAST) && in devinet_ioctl()
1208 ret = inet_set_ifa(dev, ifa); in devinet_ioctl()
1254 if ((dev->flags & IFF_BROADCAST) && in devinet_ioctl()
1271 int inet_gifconf(struct net_device *dev, char __user *buf, int len, int size) in inet_gifconf() argument
1273 struct in_device *in_dev = __in_dev_get_rtnl(dev); in inet_gifconf()
1325 __be32 inet_select_addr(const struct net_device *dev, __be32 dst, int scope) in inet_select_addr() argument
1331 struct net *net = dev_net(dev); in inet_select_addr()
1335 in_dev = __in_dev_get_rcu(dev); in inet_select_addr()
1358 master_idx = l3mdev_master_ifindex_rcu(dev); in inet_select_addr()
1366 (dev = dev_get_by_index_rcu(net, master_idx)) && in inet_select_addr()
1367 (in_dev = __in_dev_get_rcu(dev))) { in inet_select_addr()
1377 for_each_netdev_rcu(net, dev) { in inet_select_addr()
1378 if (l3mdev_master_ifindex_rcu(dev) != master_idx) in inet_select_addr()
1381 in_dev = __in_dev_get_rcu(dev); in inet_select_addr()
1451 struct net_device *dev; in inet_confirm_addr() local
1457 for_each_netdev_rcu(net, dev) { in inet_confirm_addr()
1458 in_dev = __in_dev_get_rcu(dev); in inet_confirm_addr()
1503 static void inetdev_changename(struct net_device *dev, struct in_device *in_dev) in inetdev_changename() argument
1512 memcpy(ifa->ifa_label, dev->name, IFNAMSIZ); in inetdev_changename()
1520 if (strlen(dot) + strlen(dev->name) < IFNAMSIZ) in inetdev_changename()
1529 static void inetdev_send_gratuitous_arp(struct net_device *dev, in inetdev_send_gratuitous_arp() argument
1537 ifa->ifa_local, dev, in inetdev_send_gratuitous_arp()
1539 dev->dev_addr, NULL); in inetdev_send_gratuitous_arp()
1548 struct net_device *dev = netdev_notifier_info_to_dev(ptr); in inetdev_event() local
1549 struct in_device *in_dev = __in_dev_get_rtnl(dev); in inetdev_event()
1555 in_dev = inetdev_init(dev); in inetdev_event()
1558 if (dev->flags & IFF_LOOPBACK) { in inetdev_event()
1564 if (inetdev_valid_mtu(dev->mtu)) in inetdev_event()
1565 in_dev = inetdev_init(dev); in inetdev_event()
1573 RCU_INIT_POINTER(dev->ip_ptr, NULL); in inetdev_event()
1576 if (!inetdev_valid_mtu(dev->mtu)) in inetdev_event()
1578 if (dev->flags & IFF_LOOPBACK) { in inetdev_event()
1590 memcpy(ifa->ifa_label, dev->name, IFNAMSIZ); in inetdev_event()
1606 inetdev_send_gratuitous_arp(dev, in_dev); in inetdev_event()
1618 if (inetdev_valid_mtu(dev->mtu)) in inetdev_event()
1629 inetdev_changename(dev, in_dev); in inetdev_event()
1691 ifm->ifa_index = ifa->ifa_dev->dev->ifindex; in inet_fill_ifaddr()
1843 struct net_device *dev; in inet_dump_ifaddr() local
1860 dev = __dev_get_by_index(tgt_net, fillargs.ifindex); in inet_dump_ifaddr()
1861 if (!dev) { in inet_dump_ifaddr()
1866 in_dev = __in_dev_get_rtnl(dev); in inet_dump_ifaddr()
1881 hlist_for_each_entry_rcu(dev, head, index_hlist) { in inet_dump_ifaddr()
1886 in_dev = __in_dev_get_rcu(dev); in inet_dump_ifaddr()
1926 net = dev_net(ifa->ifa_dev->dev); in rtmsg_ifa()
1945 static size_t inet_get_link_af_size(const struct net_device *dev, in inet_get_link_af_size() argument
1948 struct in_device *in_dev = rcu_dereference_rtnl(dev->ip_ptr); in inet_get_link_af_size()
1956 static int inet_fill_link_af(struct sk_buff *skb, const struct net_device *dev, in inet_fill_link_af() argument
1959 struct in_device *in_dev = rcu_dereference_rtnl(dev->ip_ptr); in inet_fill_link_af()
1980 static int inet_validate_link_af(const struct net_device *dev, in inet_validate_link_af() argument
1987 if (dev && !__in_dev_get_rtnl(dev)) in inet_validate_link_af()
2010 static int inet_set_link_af(struct net_device *dev, const struct nlattr *nla, in inet_set_link_af() argument
2013 struct in_device *in_dev = __in_dev_get_rtnl(dev); in inet_set_link_af()
2035 bool all = false; in inet_netconf_msgsize_devconf() local
2038 all = true; in inet_netconf_msgsize_devconf()
2040 if (all || type == NETCONFA_FORWARDING) in inet_netconf_msgsize_devconf()
2042 if (all || type == NETCONFA_RP_FILTER) in inet_netconf_msgsize_devconf()
2044 if (all || type == NETCONFA_MC_FORWARDING) in inet_netconf_msgsize_devconf()
2046 if (all || type == NETCONFA_BC_FORWARDING) in inet_netconf_msgsize_devconf()
2048 if (all || type == NETCONFA_PROXY_NEIGH) in inet_netconf_msgsize_devconf()
2050 if (all || type == NETCONFA_IGNORE_ROUTES_WITH_LINKDOWN) in inet_netconf_msgsize_devconf()
2063 bool all = false; in inet_netconf_fill_devconf() local
2071 all = true; in inet_netconf_fill_devconf()
2082 if ((all || type == NETCONFA_FORWARDING) && in inet_netconf_fill_devconf()
2086 if ((all || type == NETCONFA_RP_FILTER) && in inet_netconf_fill_devconf()
2090 if ((all || type == NETCONFA_MC_FORWARDING) && in inet_netconf_fill_devconf()
2094 if ((all || type == NETCONFA_BC_FORWARDING) && in inet_netconf_fill_devconf()
2098 if ((all || type == NETCONFA_PROXY_NEIGH) && in inet_netconf_fill_devconf()
2102 if ((all || type == NETCONFA_IGNORE_ROUTES_WITH_LINKDOWN) && in inet_netconf_fill_devconf()
2197 struct net_device *dev; in inet_netconf_get_devconf() local
2218 dev = __dev_get_by_index(net, ifindex); in inet_netconf_get_devconf()
2219 if (!dev) in inet_netconf_get_devconf()
2221 in_dev = __in_dev_get_rtnl(dev); in inet_netconf_get_devconf()
2255 struct net_device *dev; in inet_netconf_dump_devconf() local
2283 hlist_for_each_entry_rcu(dev, head, index_hlist) { in inet_netconf_dump_devconf()
2286 in_dev = __in_dev_get_rcu(dev); in inet_netconf_dump_devconf()
2290 if (inet_netconf_fill_devconf(skb, dev->ifindex, in inet_netconf_dump_devconf()
2339 struct net_device *dev; in devinet_copy_dflt_conf() local
2342 for_each_netdev_rcu(net, dev) { in devinet_copy_dflt_conf()
2345 in_dev = __in_dev_get_rcu(dev); in devinet_copy_dflt_conf()
2355 struct net_device *dev; in inet_forward_change() local
2369 for_each_netdev(net, dev) { in inet_forward_change()
2373 dev_disable_lro(dev); in inet_forward_change()
2375 in_dev = __in_dev_get_rtnl(dev); in inet_forward_change()
2380 dev->ifindex, &in_dev->cnf); in inet_forward_change()
2394 return idev->dev->ifindex; in devinet_conf_ifindex()
2479 dev_disable_lro(idev->dev); in devinet_sysctl_forward()
2482 idev->dev->ifindex, in devinet_sysctl_forward()
2641 if (!sysctl_dev_name_is_allowed(idev->dev->name)) in devinet_sysctl_register()
2644 err = neigh_sysctl_register(idev->dev, idev->arp_parms, NULL); in devinet_sysctl_register()
2647 err = __devinet_sysctl_register(dev_net(idev->dev), idev->dev->name, in devinet_sysctl_register()
2648 idev->dev->ifindex, &idev->cnf); in devinet_sysctl_register()
2656 struct net *net = dev_net(idev->dev); in devinet_sysctl_unregister()
2658 __devinet_sysctl_unregister(net, &idev->cnf, idev->dev->ifindex); in devinet_sysctl_unregister()
2680 struct ipv4_devconf *all, *dflt; in devinet_init_net() local
2687 all = kmemdup(&ipv4_devconf, sizeof(ipv4_devconf), GFP_KERNEL); in devinet_init_net()
2688 if (!all) in devinet_init_net()
2700 tbl[0].data = &all->data[IPV4_DEVCONF_FORWARDING - 1]; in devinet_init_net()
2701 tbl[0].extra1 = all; in devinet_init_net()
2709 memcpy(all, current->nsproxy->net_ns->ipv4.devconf_all, in devinet_init_net()
2718 memcpy(all, init_net.ipv4.devconf_all, in devinet_init_net()
2730 err = __devinet_sysctl_register(net, "all", NETCONFA_IFINDEX_ALL, all); in devinet_init_net()
2747 net->ipv4.devconf_all = all; in devinet_init_net()
2755 __devinet_sysctl_unregister(net, all, NETCONFA_IFINDEX_ALL); in devinet_init_net()
2762 kfree(all); in devinet_init_net()