ipvlan 158 drivers/net/ipvlan/ipvlan.h void ipvlan_ht_addr_add(struct ipvl_dev *ipvlan, struct ipvl_addr *addr); ipvlan 159 drivers/net/ipvlan/ipvlan.h struct ipvl_addr *ipvlan_find_addr(const struct ipvl_dev *ipvlan, ipvlan 166 drivers/net/ipvlan/ipvlan.h void ipvlan_count_rx(const struct ipvl_dev *ipvlan, ipvlan 14 drivers/net/ipvlan/ipvlan_core.c void ipvlan_count_rx(const struct ipvl_dev *ipvlan, ipvlan 20 drivers/net/ipvlan/ipvlan_core.c pcptr = this_cpu_ptr(ipvlan->pcpu_stats); ipvlan 28 drivers/net/ipvlan/ipvlan_core.c this_cpu_inc(ipvlan->pcpu_stats->rx_errs); ipvlan 87 drivers/net/ipvlan/ipvlan_core.c void ipvlan_ht_addr_add(struct ipvl_dev *ipvlan, struct ipvl_addr *addr) ipvlan 89 drivers/net/ipvlan/ipvlan_core.c struct ipvl_port *port = ipvlan->port; ipvlan 104 drivers/net/ipvlan/ipvlan_core.c struct ipvl_addr *ipvlan_find_addr(const struct ipvl_dev *ipvlan, ipvlan 110 drivers/net/ipvlan/ipvlan_core.c list_for_each_entry_rcu(addr, &ipvlan->addrs, anode) { ipvlan 122 drivers/net/ipvlan/ipvlan_core.c struct ipvl_dev *ipvlan; ipvlan 126 drivers/net/ipvlan/ipvlan_core.c list_for_each_entry_rcu(ipvlan, &port->ipvlans, pnode) { ipvlan 127 drivers/net/ipvlan/ipvlan_core.c if (ipvlan_find_addr(ipvlan, iaddr, is_v6)) { ipvlan 229 drivers/net/ipvlan/ipvlan_core.c struct ipvl_dev *ipvlan; ipvlan 258 drivers/net/ipvlan/ipvlan_core.c list_for_each_entry_rcu(ipvlan, &port->ipvlans, pnode) { ipvlan 259 drivers/net/ipvlan/ipvlan_core.c if (tx_pkt && (ipvlan->dev == skb->dev)) ipvlan 261 drivers/net/ipvlan/ipvlan_core.c if (!test_bit(mac_hash, ipvlan->mac_filters)) ipvlan 263 drivers/net/ipvlan/ipvlan_core.c if (!(ipvlan->dev->flags & IFF_UP)) ipvlan 272 drivers/net/ipvlan/ipvlan_core.c nskb->dev = ipvlan->dev; ipvlan 274 drivers/net/ipvlan/ipvlan_core.c ret = dev_forward_skb(ipvlan->dev, nskb); ipvlan 278 drivers/net/ipvlan/ipvlan_core.c ipvlan_count_rx(ipvlan, len, ret == NET_RX_SUCCESS, true); ipvlan 315 drivers/net/ipvlan/ipvlan_core.c struct ipvl_dev *ipvlan = addr->master; ipvlan 316 drivers/net/ipvlan/ipvlan_core.c struct net_device *dev = ipvlan->dev; ipvlan 341 drivers/net/ipvlan/ipvlan_core.c if (dev_forward_skb(ipvlan->dev, skb) == NET_RX_SUCCESS) ipvlan 350 drivers/net/ipvlan/ipvlan_core.c ipvlan_count_rx(ipvlan, len, success, false); ipvlan 566 drivers/net/ipvlan/ipvlan_core.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 571 drivers/net/ipvlan/ipvlan_core.c lyr3h = ipvlan_get_L3_hdr(ipvlan->port, skb, &addr_type); ipvlan 575 drivers/net/ipvlan/ipvlan_core.c if (!ipvlan_is_vepa(ipvlan->port)) { ipvlan 576 drivers/net/ipvlan/ipvlan_core.c addr = ipvlan_addr_lookup(ipvlan->port, lyr3h, addr_type, true); ipvlan 578 drivers/net/ipvlan/ipvlan_core.c if (ipvlan_is_private(ipvlan->port)) { ipvlan 586 drivers/net/ipvlan/ipvlan_core.c ipvlan_skb_crossing_ns(skb, ipvlan->phy_dev); ipvlan 592 drivers/net/ipvlan/ipvlan_core.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 598 drivers/net/ipvlan/ipvlan_core.c if (!ipvlan_is_vepa(ipvlan->port) && ipvlan 600 drivers/net/ipvlan/ipvlan_core.c lyr3h = ipvlan_get_L3_hdr(ipvlan->port, skb, &addr_type); ipvlan 602 drivers/net/ipvlan/ipvlan_core.c addr = ipvlan_addr_lookup(ipvlan->port, lyr3h, addr_type, true); ipvlan 604 drivers/net/ipvlan/ipvlan_core.c if (ipvlan_is_private(ipvlan->port)) { ipvlan 620 drivers/net/ipvlan/ipvlan_core.c return dev_forward_skb(ipvlan->phy_dev, skb); ipvlan 624 drivers/net/ipvlan/ipvlan_core.c ipvlan_multicast_enqueue(ipvlan->port, skb, true); ipvlan 628 drivers/net/ipvlan/ipvlan_core.c skb->dev = ipvlan->phy_dev; ipvlan 634 drivers/net/ipvlan/ipvlan_core.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 635 drivers/net/ipvlan/ipvlan_core.c struct ipvl_port *port = ipvlan_port_get_rcu_bh(ipvlan->phy_dev); ipvlan 10 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan; ipvlan 16 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) { ipvlan 17 drivers/net/ipvlan/ipvlan_main.c flags = ipvlan->dev->flags; ipvlan 19 drivers/net/ipvlan/ipvlan_main.c err = dev_change_flags(ipvlan->dev, ipvlan 23 drivers/net/ipvlan/ipvlan_main.c err = dev_change_flags(ipvlan->dev, ipvlan 45 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry_continue_reverse(ipvlan, &port->ipvlans, pnode) { ipvlan 46 drivers/net/ipvlan/ipvlan_main.c flags = ipvlan->dev->flags; ipvlan 49 drivers/net/ipvlan/ipvlan_main.c dev_change_flags(ipvlan->dev, flags | IFF_NOARP, ipvlan 52 drivers/net/ipvlan/ipvlan_main.c dev_change_flags(ipvlan->dev, flags & ~IFF_NOARP, ipvlan 120 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 121 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 134 drivers/net/ipvlan/ipvlan_main.c ipvlan->pcpu_stats = netdev_alloc_pcpu_stats(struct ipvl_pcpu_stats); ipvlan 135 drivers/net/ipvlan/ipvlan_main.c if (!ipvlan->pcpu_stats) ipvlan 141 drivers/net/ipvlan/ipvlan_main.c free_percpu(ipvlan->pcpu_stats); ipvlan 152 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 153 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 156 drivers/net/ipvlan/ipvlan_main.c free_percpu(ipvlan->pcpu_stats); ipvlan 166 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 169 drivers/net/ipvlan/ipvlan_main.c if (ipvlan->port->mode == IPVLAN_MODE_L3 || ipvlan 170 drivers/net/ipvlan/ipvlan_main.c ipvlan->port->mode == IPVLAN_MODE_L3S) ipvlan 176 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry_rcu(addr, &ipvlan->addrs, anode) ipvlan 177 drivers/net/ipvlan/ipvlan_main.c ipvlan_ht_addr_add(ipvlan, addr); ipvlan 185 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 186 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 193 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry_rcu(addr, &ipvlan->addrs, anode) ipvlan 203 drivers/net/ipvlan/ipvlan_main.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 211 drivers/net/ipvlan/ipvlan_main.c pcptr = this_cpu_ptr(ipvlan->pcpu_stats); ipvlan 218 drivers/net/ipvlan/ipvlan_main.c this_cpu_inc(ipvlan->pcpu_stats->tx_drps); ipvlan 226 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 228 drivers/net/ipvlan/ipvlan_main.c return features & (ipvlan->sfeatures | ~IPVLAN_FEATURES); ipvlan 233 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 234 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 242 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 245 drivers/net/ipvlan/ipvlan_main.c bitmap_fill(ipvlan->mac_filters, IPVLAN_MAC_FILTER_SIZE); ipvlan 260 drivers/net/ipvlan/ipvlan_main.c bitmap_copy(ipvlan->mac_filters, mc_filters, ipvlan 263 drivers/net/ipvlan/ipvlan_main.c dev_uc_sync(ipvlan->phy_dev, dev); ipvlan 264 drivers/net/ipvlan/ipvlan_main.c dev_mc_sync(ipvlan->phy_dev, dev); ipvlan 270 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 272 drivers/net/ipvlan/ipvlan_main.c if (ipvlan->pcpu_stats) { ipvlan 280 drivers/net/ipvlan/ipvlan_main.c pcptr = per_cpu_ptr(ipvlan->pcpu_stats, idx); ipvlan 309 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 310 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 318 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 319 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 327 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 329 drivers/net/ipvlan/ipvlan_main.c return ipvlan->phy_dev->ifindex; ipvlan 351 drivers/net/ipvlan/ipvlan_main.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 352 drivers/net/ipvlan/ipvlan_main.c struct net_device *phy_dev = ipvlan->phy_dev; ipvlan 369 drivers/net/ipvlan/ipvlan_main.c static void ipvlan_adjust_mtu(struct ipvl_dev *ipvlan, struct net_device *dev) ipvlan 371 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev->mtu = dev->mtu; ipvlan 383 drivers/net/ipvlan/ipvlan_main.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 385 drivers/net/ipvlan/ipvlan_main.c return __ethtool_get_link_ksettings(ipvlan->phy_dev, cmd); ipvlan 397 drivers/net/ipvlan/ipvlan_main.c const struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 399 drivers/net/ipvlan/ipvlan_main.c return ipvlan->msg_enable; ipvlan 404 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 406 drivers/net/ipvlan/ipvlan_main.c ipvlan->msg_enable = value; ipvlan 421 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 422 drivers/net/ipvlan/ipvlan_main.c struct ipvl_port *port = ipvlan_port_get_rtnl(ipvlan->phy_dev); ipvlan 427 drivers/net/ipvlan/ipvlan_main.c if (!ns_capable(dev_net(ipvlan->phy_dev)->user_ns, CAP_NET_ADMIN)) ipvlan 491 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 492 drivers/net/ipvlan/ipvlan_main.c struct ipvl_port *port = ipvlan_port_get_rtnl(ipvlan->phy_dev); ipvlan 514 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 548 drivers/net/ipvlan/ipvlan_main.c ipvlan->phy_dev = phy_dev; ipvlan 549 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev = dev; ipvlan 550 drivers/net/ipvlan/ipvlan_main.c ipvlan->sfeatures = IPVLAN_FEATURES; ipvlan 552 drivers/net/ipvlan/ipvlan_main.c ipvlan_adjust_mtu(ipvlan, phy_dev); ipvlan 553 drivers/net/ipvlan/ipvlan_main.c INIT_LIST_HEAD(&ipvlan->addrs); ipvlan 554 drivers/net/ipvlan/ipvlan_main.c spin_lock_init(&ipvlan->addrs_lock); ipvlan 570 drivers/net/ipvlan/ipvlan_main.c ipvlan->port = port; ipvlan 613 drivers/net/ipvlan/ipvlan_main.c list_add_tail_rcu(&ipvlan->pnode, &port->ipvlans); ipvlan 629 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 632 drivers/net/ipvlan/ipvlan_main.c spin_lock_bh(&ipvlan->addrs_lock); ipvlan 633 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry_safe(addr, next, &ipvlan->addrs, anode) { ipvlan 638 drivers/net/ipvlan/ipvlan_main.c spin_unlock_bh(&ipvlan->addrs_lock); ipvlan 640 drivers/net/ipvlan/ipvlan_main.c ida_simple_remove(&ipvlan->port->ida, dev->dev_id); ipvlan 641 drivers/net/ipvlan/ipvlan_main.c list_del_rcu(&ipvlan->pnode); ipvlan 643 drivers/net/ipvlan/ipvlan_main.c netdev_upper_dev_unlink(ipvlan->phy_dev, dev); ipvlan 694 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan, *next; ipvlan 706 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) ipvlan 707 drivers/net/ipvlan/ipvlan_main.c netif_stacked_transfer_operstate(ipvlan->phy_dev, ipvlan 708 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev); ipvlan 727 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry_safe(ipvlan, next, &port->ipvlans, pnode) ipvlan 728 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev->rtnl_link_ops->dellink(ipvlan->dev, ipvlan 734 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) { ipvlan 735 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev->features = dev->features & IPVLAN_FEATURES; ipvlan 736 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev->gso_max_size = dev->gso_max_size; ipvlan 737 drivers/net/ipvlan/ipvlan_main.c ipvlan->dev->gso_max_segs = dev->gso_max_segs; ipvlan 738 drivers/net/ipvlan/ipvlan_main.c netdev_features_change(ipvlan->dev); ipvlan 743 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) ipvlan 744 drivers/net/ipvlan/ipvlan_main.c ipvlan_adjust_mtu(ipvlan, dev); ipvlan 749 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) { ipvlan 750 drivers/net/ipvlan/ipvlan_main.c err = dev_pre_changeaddr_notify(ipvlan->dev, ipvlan 759 drivers/net/ipvlan/ipvlan_main.c list_for_each_entry(ipvlan, &port->ipvlans, pnode) { ipvlan 760 drivers/net/ipvlan/ipvlan_main.c ether_addr_copy(ipvlan->dev->dev_addr, dev->dev_addr); ipvlan 761 drivers/net/ipvlan/ipvlan_main.c call_netdevice_notifiers(NETDEV_CHANGEADDR, ipvlan->dev); ipvlan 773 drivers/net/ipvlan/ipvlan_main.c static int ipvlan_add_addr(struct ipvl_dev *ipvlan, void *iaddr, bool is_v6) ipvlan 781 drivers/net/ipvlan/ipvlan_main.c addr->master = ipvlan; ipvlan 792 drivers/net/ipvlan/ipvlan_main.c list_add_tail_rcu(&addr->anode, &ipvlan->addrs); ipvlan 797 drivers/net/ipvlan/ipvlan_main.c if (netif_running(ipvlan->dev)) ipvlan 798 drivers/net/ipvlan/ipvlan_main.c ipvlan_ht_addr_add(ipvlan, addr); ipvlan 803 drivers/net/ipvlan/ipvlan_main.c static void ipvlan_del_addr(struct ipvl_dev *ipvlan, void *iaddr, bool is_v6) ipvlan 807 drivers/net/ipvlan/ipvlan_main.c spin_lock_bh(&ipvlan->addrs_lock); ipvlan 808 drivers/net/ipvlan/ipvlan_main.c addr = ipvlan_find_addr(ipvlan, iaddr, is_v6); ipvlan 810 drivers/net/ipvlan/ipvlan_main.c spin_unlock_bh(&ipvlan->addrs_lock); ipvlan 816 drivers/net/ipvlan/ipvlan_main.c spin_unlock_bh(&ipvlan->addrs_lock); ipvlan 822 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 827 drivers/net/ipvlan/ipvlan_main.c if (!ipvlan || !ipvlan->port) ipvlan 834 drivers/net/ipvlan/ipvlan_main.c static int ipvlan_add_addr6(struct ipvl_dev *ipvlan, struct in6_addr *ip6_addr) ipvlan 838 drivers/net/ipvlan/ipvlan_main.c spin_lock_bh(&ipvlan->addrs_lock); ipvlan 839 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_addr_busy(ipvlan->port, ip6_addr, true)) ipvlan 840 drivers/net/ipvlan/ipvlan_main.c netif_err(ipvlan, ifup, ipvlan->dev, ipvlan 842 drivers/net/ipvlan/ipvlan_main.c ip6_addr, ipvlan->dev->name); ipvlan 844 drivers/net/ipvlan/ipvlan_main.c ret = ipvlan_add_addr(ipvlan, ip6_addr, true); ipvlan 845 drivers/net/ipvlan/ipvlan_main.c spin_unlock_bh(&ipvlan->addrs_lock); ipvlan 849 drivers/net/ipvlan/ipvlan_main.c static void ipvlan_del_addr6(struct ipvl_dev *ipvlan, struct in6_addr *ip6_addr) ipvlan 851 drivers/net/ipvlan/ipvlan_main.c return ipvlan_del_addr(ipvlan, ip6_addr, true); ipvlan 859 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 866 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_add_addr6(ipvlan, &if6->addr)) ipvlan 871 drivers/net/ipvlan/ipvlan_main.c ipvlan_del_addr6(ipvlan, &if6->addr); ipvlan 883 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 890 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_addr_busy(ipvlan->port, &i6vi->i6vi_addr, true)) { ipvlan 902 drivers/net/ipvlan/ipvlan_main.c static int ipvlan_add_addr4(struct ipvl_dev *ipvlan, struct in_addr *ip4_addr) ipvlan 906 drivers/net/ipvlan/ipvlan_main.c spin_lock_bh(&ipvlan->addrs_lock); ipvlan 907 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_addr_busy(ipvlan->port, ip4_addr, false)) ipvlan 908 drivers/net/ipvlan/ipvlan_main.c netif_err(ipvlan, ifup, ipvlan->dev, ipvlan 910 drivers/net/ipvlan/ipvlan_main.c ip4_addr, ipvlan->dev->name); ipvlan 912 drivers/net/ipvlan/ipvlan_main.c ret = ipvlan_add_addr(ipvlan, ip4_addr, false); ipvlan 913 drivers/net/ipvlan/ipvlan_main.c spin_unlock_bh(&ipvlan->addrs_lock); ipvlan 917 drivers/net/ipvlan/ipvlan_main.c static void ipvlan_del_addr4(struct ipvl_dev *ipvlan, struct in_addr *ip4_addr) ipvlan 919 drivers/net/ipvlan/ipvlan_main.c return ipvlan_del_addr(ipvlan, ip4_addr, false); ipvlan 927 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 936 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_add_addr4(ipvlan, &ip4_addr)) ipvlan 942 drivers/net/ipvlan/ipvlan_main.c ipvlan_del_addr4(ipvlan, &ip4_addr); ipvlan 954 drivers/net/ipvlan/ipvlan_main.c struct ipvl_dev *ipvlan = netdev_priv(dev); ipvlan 961 drivers/net/ipvlan/ipvlan_main.c if (ipvlan_addr_busy(ipvlan->port, &ivi->ivi_addr, false)) {