Lines Matching refs:vni
81 __be32 vni; member
185 static inline struct hlist_head *vni_head(struct vxlan_sock *vs, __be32 vni) in vni_head() argument
187 return &vs->vni_list[hash_32((__force u32)vni, VNI_HASH_BITS)]; in vni_head()
231 __be32 vni) in vxlan_vs_find_vni() argument
237 vni = 0; in vxlan_vs_find_vni()
239 hlist_for_each_entry_rcu(node, vni_head(vs, vni), hlist) { in vxlan_vs_find_vni()
240 if (node->vxlan->default_dst.remote_vni != vni) in vxlan_vs_find_vni()
259 __be32 vni, sa_family_t family, in vxlan_find_vni() argument
268 return vxlan_vs_find_vni(vs, ifindex, vni); in vxlan_find_vni()
320 if ((vxlan->cfg.flags & VXLAN_F_COLLECT_METADATA) && fdb->vni && in vxlan_fdb_info()
322 be32_to_cpu(fdb->vni))) in vxlan_fdb_info()
422 static u32 eth_vni_hash(const unsigned char *addr, __be32 vni) in eth_vni_hash() argument
427 return jhash_2words(key, vni, vxlan_salt) & (FDB_HASH_SIZE - 1); in eth_vni_hash()
432 const u8 *mac, __be32 vni) in vxlan_fdb_head() argument
435 return &vxlan->fdb_head[eth_vni_hash(mac, vni)]; in vxlan_fdb_head()
442 const u8 *mac, __be32 vni) in __vxlan_find_mac() argument
444 struct hlist_head *head = vxlan_fdb_head(vxlan, mac, vni); in __vxlan_find_mac()
450 if (vni == f->vni) in __vxlan_find_mac()
462 const u8 *mac, __be32 vni) in vxlan_find_mac() argument
466 f = __vxlan_find_mac(vxlan, mac, vni); in vxlan_find_mac()
476 __be32 vni, __u32 ifindex) in vxlan_fdb_find_rdst() argument
483 rd->remote_vni == vni && in vxlan_fdb_find_rdst()
493 union vxlan_addr *ip, __be16 port, __be32 vni, in vxlan_fdb_replace() argument
498 rd = vxlan_fdb_find_rdst(f, ip, port, vni, ifindex); in vxlan_fdb_replace()
509 rd->remote_vni = vni; in vxlan_fdb_replace()
516 union vxlan_addr *ip, __be16 port, __be32 vni, in vxlan_fdb_append() argument
521 rd = vxlan_fdb_find_rdst(f, ip, port, vni, ifindex); in vxlan_fdb_append()
536 rd->remote_vni = vni; in vxlan_fdb_append()
652 f->vni = src_vni; in vxlan_fdb_alloc()
662 __be32 vni, __u32 ifindex, __u8 ndm_flags, in vxlan_fdb_create() argument
678 rc = vxlan_fdb_append(f, ip, port, vni, ifindex, &rd); in vxlan_fdb_create()
697 __be16 port, __be32 src_vni, __be32 vni, in vxlan_fdb_update() argument
726 notify |= vxlan_fdb_replace(f, ip, port, vni, in vxlan_fdb_update()
734 rc = vxlan_fdb_append(f, ip, port, vni, ifindex, &rd); in vxlan_fdb_update()
751 vni, ifindex, ndm_flags, &f); in vxlan_fdb_update()
810 __be32 *vni, u32 *ifindex) in vxlan_fdb_parse() argument
843 *vni = cpu_to_be32(nla_get_u32(tb[NDA_VNI])); in vxlan_fdb_parse()
845 *vni = vxlan->default_dst.remote_vni; in vxlan_fdb_parse()
881 __be32 src_vni, vni; in vxlan_fdb_add() local
894 err = vxlan_fdb_parse(tb, vxlan, &ip, &port, &src_vni, &vni, &ifindex); in vxlan_fdb_add()
903 port, src_vni, vni, ifindex, ndm->ndm_flags); in vxlan_fdb_add()
911 __be16 port, __be32 src_vni, __be32 vni, in __vxlan_fdb_delete() argument
923 rd = vxlan_fdb_find_rdst(f, &ip, port, vni, ifindex); in __vxlan_fdb_delete()
949 __be32 src_vni, vni; in vxlan_fdb_delete() local
954 err = vxlan_fdb_parse(tb, vxlan, &ip, &port, &src_vni, &vni, &ifindex); in vxlan_fdb_delete()
959 err = __vxlan_fdb_delete(vxlan, addr, ip, port, src_vni, vni, ifindex, in vxlan_fdb_delete()
1007 u32 src_ifindex, __be32 vni) in vxlan_snoop() argument
1019 f = vxlan_find_mac(vxlan, src_mac, vni); in vxlan_snoop()
1049 vni, in vxlan_snoop()
1309 struct sk_buff *skb, __be32 vni) in vxlan_set_mac() argument
1334 vxlan_snoop(skb->dev, &saddr, eth_hdr(skb)->h_source, ifindex, vni)) in vxlan_set_mac()
1376 __be32 vni = 0; in vxlan_rcv() local
1398 vni = vxlan_vni(vxlan_hdr(skb)->vx_vni); in vxlan_rcv()
1400 vxlan = vxlan_vs_find_vni(vs, skb->dev->ifindex, vni); in vxlan_rcv()
1421 key32_to_tunnel_id(vni), sizeof(*md)); in vxlan_rcv()
1455 if (!vxlan_set_mac(vxlan, vs, skb, vni)) in vxlan_rcv()
1487 static int arp_reduce(struct net_device *dev, struct sk_buff *skb, __be32 vni) in arp_reduce() argument
1534 f = vxlan_find_mac(vxlan, n->ha, vni); in arp_reduce()
1657 static int neigh_reduce(struct net_device *dev, struct sk_buff *skb, __be32 vni) in neigh_reduce() argument
1689 f = vxlan_find_mac(vxlan, n->ha, vni); in neigh_reduce()
1827 int iphdr_len, __be32 vni, in vxlan_build_skb() argument
1862 vxh->vx_vni = vxlan_vni_field(vni); in vxlan_build_skb()
2001 struct vxlan_dev *dst_vxlan, __be32 vni) in vxlan_encap_bypass() argument
2028 vni); in vxlan_encap_bypass()
2048 __be16 dst_port, int dst_ifindex, __be32 vni, in encap_bypass_if_local() argument
2065 dst_vxlan = vxlan_find_vni(vxlan->net, dst_ifindex, vni, in encap_bypass_if_local()
2074 vxlan_encap_bypass(skb, vxlan, dst_vxlan, vni); in encap_bypass_if_local()
2095 __be32 vni, label; in vxlan_xmit_one() local
2117 vni = (rdst->remote_vni) ? : default_vni; in vxlan_xmit_one()
2155 vni = tunnel_id_to_key32(info->key.tun_id); in vxlan_xmit_one()
2188 dst_port, ifindex, vni, in vxlan_xmit_one()
2202 vni, md, flags, udp_sum); in vxlan_xmit_one()
2228 dst_port, ifindex, vni, in vxlan_xmit_one()
2240 vni, md, flags, udp_sum); in vxlan_xmit_one()
2284 __be32 vni = 0; in vxlan_xmit() local
2293 vni = tunnel_id_to_key32(info->key.tun_id); in vxlan_xmit()
2296 vxlan_xmit_one(skb, dev, vni, NULL, false); in vxlan_xmit()
2306 return arp_reduce(dev, skb, vni); in vxlan_xmit()
2316 return neigh_reduce(dev, skb, vni); in vxlan_xmit()
2322 f = vxlan_find_mac(vxlan, eth->h_dest, vni); in vxlan_xmit()
2330 f = vxlan_find_mac(vxlan, eth->h_dest, vni); in vxlan_xmit()
2334 f = vxlan_find_mac(vxlan, all_zeros_mac, vni); in vxlan_xmit()
2355 vxlan_xmit_one(skb1, dev, vni, rdst, did_rsc); in vxlan_xmit()
2359 vxlan_xmit_one(skb, dev, vni, fdst, did_rsc); in vxlan_xmit()
2422 __be32 vni = vxlan->default_dst.remote_vni; in vxlan_vs_add_dev() local
2426 hlist_add_head_rcu(&node->hlist, vni_head(vs, vni)); in vxlan_vs_add_dev()
2440 static void vxlan_fdb_delete_default(struct vxlan_dev *vxlan, __be32 vni) in vxlan_fdb_delete_default() argument
2445 f = __vxlan_find_mac(vxlan, all_zeros_mac, vni); in vxlan_fdb_delete_default()
2455 vxlan_fdb_delete_default(vxlan, vxlan->cfg.vni); in vxlan_uninit()
3092 if (tmp->cfg.vni != conf->vni) in vxlan_config_validate()
3136 dst->remote_vni = conf->vni; in vxlan_config_apply()
3250 __be32 vni = cpu_to_be32(nla_get_u32(data[IFLA_VXLAN_ID])); in vxlan_nl2conf() local
3252 if (changelink && (vni != conf->vni)) in vxlan_nl2conf()
3254 conf->vni = cpu_to_be32(nla_get_u32(data[IFLA_VXLAN_ID])); in vxlan_nl2conf()