Lines Matching refs:vxlan

281 	struct vxlan_dev *vxlan;  in vxlan_vs_find_vni()  local
283 hlist_for_each_entry_rcu(vxlan, vni_head(vs, id), hlist) { in vxlan_vs_find_vni()
284 if (vxlan->default_dst.remote_vni == id) in vxlan_vs_find_vni()
285 return vxlan; in vxlan_vs_find_vni()
306 static int vxlan_fdb_info(struct sk_buff *skb, struct vxlan_dev *vxlan, in vxlan_fdb_info() argument
333 ndm->ndm_ifindex = vxlan->dev->ifindex; in vxlan_fdb_info()
337 if (!net_eq(dev_net(vxlan->dev), vxlan->net) && in vxlan_fdb_info()
339 peernet2id(dev_net(vxlan->dev), vxlan->net))) in vxlan_fdb_info()
348 if (rdst->remote_port && rdst->remote_port != vxlan->dst_port && in vxlan_fdb_info()
351 if (rdst->remote_vni != vxlan->default_dst.remote_vni && in vxlan_fdb_info()
386 static void vxlan_fdb_notify(struct vxlan_dev *vxlan, struct vxlan_fdb *fdb, in vxlan_fdb_notify() argument
389 struct net *net = dev_net(vxlan->dev); in vxlan_fdb_notify()
397 err = vxlan_fdb_info(skb, vxlan, fdb, 0, 0, type, 0, rd); in vxlan_fdb_notify()
414 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_ip_miss() local
423 vxlan_fdb_notify(vxlan, &f, &remote, RTM_GETNEIGH); in vxlan_ip_miss()
426 static void vxlan_fdb_miss(struct vxlan_dev *vxlan, const u8 eth_addr[ETH_ALEN]) in vxlan_fdb_miss() argument
435 vxlan_fdb_notify(vxlan, &f, &remote, RTM_GETNEIGH); in vxlan_fdb_miss()
453 static inline struct hlist_head *vxlan_fdb_head(struct vxlan_dev *vxlan, in vxlan_fdb_head() argument
456 return &vxlan->fdb_head[eth_hash(mac)]; in vxlan_fdb_head()
460 static struct vxlan_fdb *__vxlan_find_mac(struct vxlan_dev *vxlan, in __vxlan_find_mac() argument
463 struct hlist_head *head = vxlan_fdb_head(vxlan, mac); in __vxlan_find_mac()
474 static struct vxlan_fdb *vxlan_find_mac(struct vxlan_dev *vxlan, in vxlan_find_mac() argument
479 f = __vxlan_find_mac(vxlan, mac); in vxlan_find_mac()
702 static int vxlan_fdb_create(struct vxlan_dev *vxlan, in vxlan_fdb_create() argument
712 f = __vxlan_find_mac(vxlan, mac); in vxlan_fdb_create()
715 netdev_dbg(vxlan->dev, in vxlan_fdb_create()
752 if (vxlan->addrmax && vxlan->addrcnt >= vxlan->addrmax) in vxlan_fdb_create()
760 netdev_dbg(vxlan->dev, "add %pM -> %pIS\n", mac, ip); in vxlan_fdb_create()
774 ++vxlan->addrcnt; in vxlan_fdb_create()
776 vxlan_fdb_head(vxlan, mac)); in vxlan_fdb_create()
782 vxlan_fdb_notify(vxlan, f, rd, RTM_NEWNEIGH); in vxlan_fdb_create()
798 static void vxlan_fdb_destroy(struct vxlan_dev *vxlan, struct vxlan_fdb *f) in vxlan_fdb_destroy() argument
800 netdev_dbg(vxlan->dev, in vxlan_fdb_destroy()
803 --vxlan->addrcnt; in vxlan_fdb_destroy()
804 vxlan_fdb_notify(vxlan, f, first_remote_rtnl(f), RTM_DELNEIGH); in vxlan_fdb_destroy()
810 static int vxlan_fdb_parse(struct nlattr *tb[], struct vxlan_dev *vxlan, in vxlan_fdb_parse() argument
813 struct net *net = dev_net(vxlan->dev); in vxlan_fdb_parse()
821 union vxlan_addr *remote = &vxlan->default_dst.remote_ip; in vxlan_fdb_parse()
838 *port = vxlan->dst_port; in vxlan_fdb_parse()
846 *vni = vxlan->default_dst.remote_vni; in vxlan_fdb_parse()
870 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_fdb_add() local
886 err = vxlan_fdb_parse(tb, vxlan, &ip, &port, &vni, &ifindex); in vxlan_fdb_add()
890 if (vxlan->default_dst.remote_ip.sa.sa_family != ip.sa.sa_family) in vxlan_fdb_add()
893 spin_lock_bh(&vxlan->hash_lock); in vxlan_fdb_add()
894 err = vxlan_fdb_create(vxlan, addr, &ip, ndm->ndm_state, flags, in vxlan_fdb_add()
896 spin_unlock_bh(&vxlan->hash_lock); in vxlan_fdb_add()
906 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_fdb_delete() local
914 err = vxlan_fdb_parse(tb, vxlan, &ip, &port, &vni, &ifindex); in vxlan_fdb_delete()
920 spin_lock_bh(&vxlan->hash_lock); in vxlan_fdb_delete()
921 f = vxlan_find_mac(vxlan, addr); in vxlan_fdb_delete()
938 vxlan_fdb_notify(vxlan, f, rd, RTM_DELNEIGH); in vxlan_fdb_delete()
943 vxlan_fdb_destroy(vxlan, f); in vxlan_fdb_delete()
946 spin_unlock_bh(&vxlan->hash_lock); in vxlan_fdb_delete()
956 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_fdb_dump() local
963 hlist_for_each_entry_rcu(f, &vxlan->fdb_head[h], hlist) { in vxlan_fdb_dump()
970 err = vxlan_fdb_info(skb, vxlan, f, in vxlan_fdb_dump()
993 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_snoop() local
996 f = vxlan_find_mac(vxlan, src_mac); in vxlan_snoop()
1014 vxlan_fdb_notify(vxlan, f, rdst, RTM_NEWNEIGH); in vxlan_snoop()
1017 spin_lock(&vxlan->hash_lock); in vxlan_snoop()
1021 vxlan_fdb_create(vxlan, src_mac, src_ip, in vxlan_snoop()
1024 vxlan->dst_port, in vxlan_snoop()
1025 vxlan->default_dst.remote_vni, in vxlan_snoop()
1027 spin_unlock(&vxlan->hash_lock); in vxlan_snoop()
1036 struct vxlan_dev *vxlan; in vxlan_group_used() local
1044 list_for_each_entry(vxlan, &vn->vxlan_list, next) { in vxlan_group_used()
1045 if (!netif_running(vxlan->dev) || vxlan == dev) in vxlan_group_used()
1048 if (vxlan->vn_sock != dev->vn_sock) in vxlan_group_used()
1051 if (!vxlan_addr_equal(&vxlan->default_dst.remote_ip, in vxlan_group_used()
1055 if (vxlan->default_dst.remote_ifindex != in vxlan_group_used()
1086 static int vxlan_igmp_join(struct vxlan_dev *vxlan) in vxlan_igmp_join() argument
1088 struct vxlan_sock *vs = vxlan->vn_sock; in vxlan_igmp_join()
1090 union vxlan_addr *ip = &vxlan->default_dst.remote_ip; in vxlan_igmp_join()
1091 int ifindex = vxlan->default_dst.remote_ifindex; in vxlan_igmp_join()
1114 static int vxlan_igmp_leave(struct vxlan_dev *vxlan) in vxlan_igmp_leave() argument
1116 struct vxlan_sock *vs = vxlan->vn_sock; in vxlan_igmp_leave()
1118 union vxlan_addr *ip = &vxlan->default_dst.remote_ip; in vxlan_igmp_leave()
1119 int ifindex = vxlan->default_dst.remote_ifindex; in vxlan_igmp_leave()
1259 struct vxlan_dev *vxlan; in vxlan_rcv() local
1268 vxlan = vxlan_vs_find_vni(vs, vni); in vxlan_rcv()
1269 if (!vxlan) in vxlan_rcv()
1272 remote_ip = &vxlan->default_dst.remote_ip; in vxlan_rcv()
1274 skb_scrub_packet(skb, !net_eq(vxlan->net, dev_net(vxlan->dev))); in vxlan_rcv()
1275 skb->protocol = eth_type_trans(skb, vxlan->dev); in vxlan_rcv()
1279 if (ether_addr_equal(eth_hdr(skb)->h_source, vxlan->dev->dev_addr)) in vxlan_rcv()
1295 if ((vxlan->flags & VXLAN_F_LEARN) && in vxlan_rcv()
1317 ++vxlan->dev->stats.rx_frame_errors; in vxlan_rcv()
1318 ++vxlan->dev->stats.rx_errors; in vxlan_rcv()
1323 stats = this_cpu_ptr(vxlan->dev->tstats); in vxlan_rcv()
1339 struct vxlan_dev *vxlan = netdev_priv(dev); in arp_reduce() local
1384 f = vxlan_find_mac(vxlan, n->ha); in arp_reduce()
1406 } else if (vxlan->flags & VXLAN_F_L3MISS) { in arp_reduce()
1510 struct vxlan_dev *vxlan = netdev_priv(dev); in neigh_reduce() local
1545 f = vxlan_find_mac(vxlan, n->ha); in neigh_reduce()
1563 } else if (vxlan->flags & VXLAN_F_L3MISS) { in neigh_reduce()
1580 struct vxlan_dev *vxlan = netdev_priv(dev); in route_shortcircuit() local
1596 if (!n && (vxlan->flags & VXLAN_F_L3MISS)) { in route_shortcircuit()
1617 if (!n && (vxlan->flags & VXLAN_F_L3MISS)) { in route_shortcircuit()
1881 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_xmit_one() local
1882 struct sock *sk = vxlan->vn_sock->sock->sk; in vxlan_xmit_one()
1894 dst_port = rdst->remote_port ? rdst->remote_port : vxlan->dst_port; in vxlan_xmit_one()
1901 vxlan_encap_bypass(skb, vxlan, vxlan); in vxlan_xmit_one()
1909 ttl = vxlan->ttl; in vxlan_xmit_one()
1913 tos = vxlan->tos; in vxlan_xmit_one()
1917 src_port = udp_flow_src_port(dev_net(dev), skb, vxlan->port_min, in vxlan_xmit_one()
1918 vxlan->port_max, true); in vxlan_xmit_one()
1925 fl4.saddr = vxlan->saddr.sin.sin_addr.s_addr; in vxlan_xmit_one()
1927 rt = ip_route_output_key(vxlan->net, &fl4); in vxlan_xmit_one()
1948 dst_vxlan = vxlan_find_vni(vxlan->net, vni, in vxlan_xmit_one()
1950 vxlan->flags); in vxlan_xmit_one()
1953 vxlan_encap_bypass(skb, vxlan, dst_vxlan); in vxlan_xmit_one()
1965 !net_eq(vxlan->net, dev_net(vxlan->dev)), in vxlan_xmit_one()
1966 vxlan->flags); in vxlan_xmit_one()
1983 fl6.saddr = vxlan->saddr.sin6.sin6_addr; in vxlan_xmit_one()
2008 dst_vxlan = vxlan_find_vni(vxlan->net, vni, in vxlan_xmit_one()
2010 vxlan->flags); in vxlan_xmit_one()
2013 vxlan_encap_bypass(skb, vxlan, dst_vxlan); in vxlan_xmit_one()
2023 !net_eq(vxlan->net, dev_net(vxlan->dev)), in vxlan_xmit_one()
2024 vxlan->flags); in vxlan_xmit_one()
2050 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_xmit() local
2059 if ((vxlan->flags & VXLAN_F_PROXY)) { in vxlan_xmit()
2078 f = vxlan_find_mac(vxlan, eth->h_dest); in vxlan_xmit()
2081 if (f && (f->flags & NTF_ROUTER) && (vxlan->flags & VXLAN_F_RSC) && in vxlan_xmit()
2086 f = vxlan_find_mac(vxlan, eth->h_dest); in vxlan_xmit()
2090 f = vxlan_find_mac(vxlan, all_zeros_mac); in vxlan_xmit()
2092 if ((vxlan->flags & VXLAN_F_L2MISS) && in vxlan_xmit()
2094 vxlan_fdb_miss(vxlan, eth->h_dest); in vxlan_xmit()
2124 struct vxlan_dev *vxlan = (struct vxlan_dev *) arg; in vxlan_cleanup() local
2128 if (!netif_running(vxlan->dev)) in vxlan_cleanup()
2131 spin_lock_bh(&vxlan->hash_lock); in vxlan_cleanup()
2134 hlist_for_each_safe(p, n, &vxlan->fdb_head[h]) { in vxlan_cleanup()
2142 timeout = f->used + vxlan->age_interval * HZ; in vxlan_cleanup()
2144 netdev_dbg(vxlan->dev, in vxlan_cleanup()
2148 vxlan_fdb_destroy(vxlan, f); in vxlan_cleanup()
2153 spin_unlock_bh(&vxlan->hash_lock); in vxlan_cleanup()
2155 mod_timer(&vxlan->age_timer, next_timer); in vxlan_cleanup()
2158 static void vxlan_vs_add_dev(struct vxlan_sock *vs, struct vxlan_dev *vxlan) in vxlan_vs_add_dev() argument
2160 struct vxlan_net *vn = net_generic(vxlan->net, vxlan_net_id); in vxlan_vs_add_dev()
2161 __u32 vni = vxlan->default_dst.remote_vni; in vxlan_vs_add_dev()
2163 vxlan->vn_sock = vs; in vxlan_vs_add_dev()
2165 hlist_add_head_rcu(&vxlan->hlist, vni_head(vs, vni)); in vxlan_vs_add_dev()
2179 static void vxlan_fdb_delete_default(struct vxlan_dev *vxlan) in vxlan_fdb_delete_default() argument
2183 spin_lock_bh(&vxlan->hash_lock); in vxlan_fdb_delete_default()
2184 f = __vxlan_find_mac(vxlan, all_zeros_mac); in vxlan_fdb_delete_default()
2186 vxlan_fdb_destroy(vxlan, f); in vxlan_fdb_delete_default()
2187 spin_unlock_bh(&vxlan->hash_lock); in vxlan_fdb_delete_default()
2192 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_uninit() local
2194 vxlan_fdb_delete_default(vxlan); in vxlan_uninit()
2202 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_open() local
2206 vs = vxlan_sock_add(vxlan->net, vxlan->dst_port, vxlan_rcv, NULL, in vxlan_open()
2207 false, vxlan->flags); in vxlan_open()
2211 vxlan_vs_add_dev(vs, vxlan); in vxlan_open()
2213 if (vxlan_addr_multicast(&vxlan->default_dst.remote_ip)) { in vxlan_open()
2214 ret = vxlan_igmp_join(vxlan); in vxlan_open()
2223 if (vxlan->age_interval) in vxlan_open()
2224 mod_timer(&vxlan->age_timer, jiffies + FDB_AGE_INTERVAL); in vxlan_open()
2230 static void vxlan_flush(struct vxlan_dev *vxlan) in vxlan_flush() argument
2234 spin_lock_bh(&vxlan->hash_lock); in vxlan_flush()
2237 hlist_for_each_safe(p, n, &vxlan->fdb_head[h]) { in vxlan_flush()
2242 vxlan_fdb_destroy(vxlan, f); in vxlan_flush()
2245 spin_unlock_bh(&vxlan->hash_lock); in vxlan_flush()
2251 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_stop() local
2252 struct vxlan_net *vn = net_generic(vxlan->net, vxlan_net_id); in vxlan_stop()
2253 struct vxlan_sock *vs = vxlan->vn_sock; in vxlan_stop()
2256 if (vxlan_addr_multicast(&vxlan->default_dst.remote_ip) && in vxlan_stop()
2257 !vxlan_group_used(vn, vxlan)) in vxlan_stop()
2258 ret = vxlan_igmp_leave(vxlan); in vxlan_stop()
2260 del_timer_sync(&vxlan->age_timer); in vxlan_stop()
2262 vxlan_flush(vxlan); in vxlan_stop()
2275 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_change_mtu() local
2276 struct vxlan_rdst *dst = &vxlan->default_dst; in vxlan_change_mtu()
2280 lowerdev = __dev_get_by_index(vxlan->net, dst->remote_ifindex); in vxlan_change_mtu()
2346 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_setup() local
2351 if (vxlan->default_dst.remote_ip.sa.sa_family == AF_INET6) in vxlan_setup()
2374 INIT_LIST_HEAD(&vxlan->next); in vxlan_setup()
2375 spin_lock_init(&vxlan->hash_lock); in vxlan_setup()
2377 init_timer_deferrable(&vxlan->age_timer); in vxlan_setup()
2378 vxlan->age_timer.function = vxlan_cleanup; in vxlan_setup()
2379 vxlan->age_timer.data = (unsigned long) vxlan; in vxlan_setup()
2381 vxlan->dst_port = htons(vxlan_port); in vxlan_setup()
2383 vxlan->dev = dev; in vxlan_setup()
2386 INIT_HLIST_HEAD(&vxlan->fdb_head[h]); in vxlan_setup()
2584 struct vxlan_dev *vxlan = netdev_priv(dev), *tmp; in vxlan_newlink() local
2585 struct vxlan_rdst *dst = &vxlan->default_dst; in vxlan_newlink()
2593 vxlan->net = src_net; in vxlan_newlink()
2612 vxlan->saddr.sin.sin_addr.s_addr = nla_get_in_addr(data[IFLA_VXLAN_LOCAL]); in vxlan_newlink()
2613 vxlan->saddr.sa.sa_family = AF_INET; in vxlan_newlink()
2619 vxlan->saddr.sin6.sin6_addr = nla_get_in6_addr(data[IFLA_VXLAN_LOCAL6]); in vxlan_newlink()
2620 vxlan->saddr.sa.sa_family = AF_INET6; in vxlan_newlink()
2641 vxlan->flags |= VXLAN_F_IPV6; in vxlan_newlink()
2651 vxlan->flags |= VXLAN_F_IPV6; in vxlan_newlink()
2654 vxlan->tos = nla_get_u8(data[IFLA_VXLAN_TOS]); in vxlan_newlink()
2657 vxlan->ttl = nla_get_u8(data[IFLA_VXLAN_TTL]); in vxlan_newlink()
2660 vxlan->flags |= VXLAN_F_LEARN; in vxlan_newlink()
2663 vxlan->age_interval = nla_get_u32(data[IFLA_VXLAN_AGEING]); in vxlan_newlink()
2665 vxlan->age_interval = FDB_AGE_DEFAULT; in vxlan_newlink()
2668 vxlan->flags |= VXLAN_F_PROXY; in vxlan_newlink()
2671 vxlan->flags |= VXLAN_F_RSC; in vxlan_newlink()
2674 vxlan->flags |= VXLAN_F_L2MISS; in vxlan_newlink()
2677 vxlan->flags |= VXLAN_F_L3MISS; in vxlan_newlink()
2680 vxlan->addrmax = nla_get_u32(data[IFLA_VXLAN_LIMIT]); in vxlan_newlink()
2685 vxlan->port_min = ntohs(p->low); in vxlan_newlink()
2686 vxlan->port_max = ntohs(p->high); in vxlan_newlink()
2690 vxlan->dst_port = nla_get_be16(data[IFLA_VXLAN_PORT]); in vxlan_newlink()
2693 vxlan->flags |= VXLAN_F_UDP_CSUM; in vxlan_newlink()
2697 vxlan->flags |= VXLAN_F_UDP_ZERO_CSUM6_TX; in vxlan_newlink()
2701 vxlan->flags |= VXLAN_F_UDP_ZERO_CSUM6_RX; in vxlan_newlink()
2705 vxlan->flags |= VXLAN_F_REMCSUM_TX; in vxlan_newlink()
2709 vxlan->flags |= VXLAN_F_REMCSUM_RX; in vxlan_newlink()
2712 vxlan->flags |= VXLAN_F_GBP; in vxlan_newlink()
2715 vxlan->flags |= VXLAN_F_REMCSUM_NOPARTIAL; in vxlan_newlink()
2721 tmp->dst_port == vxlan->dst_port && in vxlan_newlink()
2723 (vxlan->flags & VXLAN_F_RCV_FLAGS)) in vxlan_newlink()
2730 if (!vxlan_addr_any(&vxlan->default_dst.remote_ip)) { in vxlan_newlink()
2731 err = vxlan_fdb_create(vxlan, all_zeros_mac, in vxlan_newlink()
2732 &vxlan->default_dst.remote_ip, in vxlan_newlink()
2735 vxlan->dst_port, in vxlan_newlink()
2736 vxlan->default_dst.remote_vni, in vxlan_newlink()
2737 vxlan->default_dst.remote_ifindex, in vxlan_newlink()
2745 vxlan_fdb_delete_default(vxlan); in vxlan_newlink()
2749 list_add(&vxlan->next, &vn->vxlan_list); in vxlan_newlink()
2756 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_dellink() local
2757 struct vxlan_net *vn = net_generic(vxlan->net, vxlan_net_id); in vxlan_dellink()
2760 if (!hlist_unhashed(&vxlan->hlist)) in vxlan_dellink()
2761 hlist_del_rcu(&vxlan->hlist); in vxlan_dellink()
2764 list_del(&vxlan->next); in vxlan_dellink()
2796 const struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_fill_info() local
2797 const struct vxlan_rdst *dst = &vxlan->default_dst; in vxlan_fill_info()
2799 .low = htons(vxlan->port_min), in vxlan_fill_info()
2800 .high = htons(vxlan->port_max), in vxlan_fill_info()
2823 if (!vxlan_addr_any(&vxlan->saddr)) { in vxlan_fill_info()
2824 if (vxlan->saddr.sa.sa_family == AF_INET) { in vxlan_fill_info()
2826 vxlan->saddr.sin.sin_addr.s_addr)) in vxlan_fill_info()
2831 &vxlan->saddr.sin6.sin6_addr)) in vxlan_fill_info()
2837 if (nla_put_u8(skb, IFLA_VXLAN_TTL, vxlan->ttl) || in vxlan_fill_info()
2838 nla_put_u8(skb, IFLA_VXLAN_TOS, vxlan->tos) || in vxlan_fill_info()
2840 !!(vxlan->flags & VXLAN_F_LEARN)) || in vxlan_fill_info()
2842 !!(vxlan->flags & VXLAN_F_PROXY)) || in vxlan_fill_info()
2843 nla_put_u8(skb, IFLA_VXLAN_RSC, !!(vxlan->flags & VXLAN_F_RSC)) || in vxlan_fill_info()
2845 !!(vxlan->flags & VXLAN_F_L2MISS)) || in vxlan_fill_info()
2847 !!(vxlan->flags & VXLAN_F_L3MISS)) || in vxlan_fill_info()
2848 nla_put_u32(skb, IFLA_VXLAN_AGEING, vxlan->age_interval) || in vxlan_fill_info()
2849 nla_put_u32(skb, IFLA_VXLAN_LIMIT, vxlan->addrmax) || in vxlan_fill_info()
2850 nla_put_be16(skb, IFLA_VXLAN_PORT, vxlan->dst_port) || in vxlan_fill_info()
2852 !!(vxlan->flags & VXLAN_F_UDP_CSUM)) || in vxlan_fill_info()
2854 !!(vxlan->flags & VXLAN_F_UDP_ZERO_CSUM6_TX)) || in vxlan_fill_info()
2856 !!(vxlan->flags & VXLAN_F_UDP_ZERO_CSUM6_RX)) || in vxlan_fill_info()
2858 !!(vxlan->flags & VXLAN_F_REMCSUM_TX)) || in vxlan_fill_info()
2860 !!(vxlan->flags & VXLAN_F_REMCSUM_RX))) in vxlan_fill_info()
2866 if (vxlan->flags & VXLAN_F_GBP && in vxlan_fill_info()
2870 if (vxlan->flags & VXLAN_F_REMCSUM_NOPARTIAL && in vxlan_fill_info()
2882 struct vxlan_dev *vxlan = netdev_priv(dev); in vxlan_get_link_net() local
2884 return vxlan->net; in vxlan_get_link_net()
2904 struct vxlan_dev *vxlan, *next; in vxlan_handle_lowerdev_unregister() local
2907 list_for_each_entry_safe(vxlan, next, &vn->vxlan_list, next) { in vxlan_handle_lowerdev_unregister()
2908 struct vxlan_rdst *dst = &vxlan->default_dst; in vxlan_handle_lowerdev_unregister()
2917 vxlan_dellink(vxlan->dev, &list_kill); in vxlan_handle_lowerdev_unregister()
2956 struct vxlan_dev *vxlan, *next; in vxlan_exit_net() local
2965 list_for_each_entry_safe(vxlan, next, &vn->vxlan_list, next) { in vxlan_exit_net()
2969 if (!net_eq(dev_net(vxlan->dev), net)) in vxlan_exit_net()
2970 unregister_netdevice_queue(vxlan->dev, &list); in vxlan_exit_net()