/drivers/net/vxlan/ |
D | vxlan_multicast.c | 17 int vxlan_igmp_join(struct vxlan_dev *vxlan, union vxlan_addr *rip, in vxlan_igmp_join() argument 20 union vxlan_addr *ip = (rip ? : &vxlan->default_dst.remote_ip); in vxlan_igmp_join() 21 int ifindex = (rifindex ? : vxlan->default_dst.remote_ifindex); in vxlan_igmp_join() 26 struct vxlan_sock *sock4 = rtnl_dereference(vxlan->vn4_sock); in vxlan_igmp_join() 38 struct vxlan_sock *sock6 = rtnl_dereference(vxlan->vn6_sock); in vxlan_igmp_join() 51 int vxlan_igmp_leave(struct vxlan_dev *vxlan, union vxlan_addr *rip, in vxlan_igmp_leave() argument 54 union vxlan_addr *ip = (rip ? : &vxlan->default_dst.remote_ip); in vxlan_igmp_leave() 55 int ifindex = (rifindex ? : vxlan->default_dst.remote_ifindex); in vxlan_igmp_leave() 60 struct vxlan_sock *sock4 = rtnl_dereference(vxlan->vn4_sock); in vxlan_igmp_leave() 72 struct vxlan_sock *sock6 = rtnl_dereference(vxlan->vn6_sock); in vxlan_igmp_leave() [all …]
|
D | vxlan_core.c | 61 static int vxlan_sock_add(struct vxlan_dev *vxlan); 63 static void vxlan_vs_del_dev(struct vxlan_dev *vxlan); 155 if (!node->vxlan) in vxlan_vs_find_vni() 158 if (node->vxlan->cfg.flags & VXLAN_F_VNIFILTER) { in vxlan_vs_find_vni() 159 vnode = vxlan_vnifilter_lookup(node->vxlan, vni); in vxlan_vs_find_vni() 162 } else if (node->vxlan->default_dst.remote_vni != vni) { in vxlan_vs_find_vni() 167 const struct vxlan_config *cfg = &node->vxlan->cfg; in vxlan_vs_find_vni() 176 return node->vxlan; in vxlan_vs_find_vni() 197 static int vxlan_fdb_info(struct sk_buff *skb, struct vxlan_dev *vxlan, in vxlan_fdb_info() argument 239 ndm->ndm_ifindex = vxlan->dev->ifindex; in vxlan_fdb_info() [all …]
|
D | vxlan_vnifilter.c | 39 static void vxlan_vs_add_del_vninode(struct vxlan_dev *vxlan, in vxlan_vs_add_del_vninode() argument 43 struct vxlan_net *vn = net_generic(vxlan->net, vxlan_net_id); in vxlan_vs_add_del_vninode() 59 vs = rtnl_dereference(vxlan->vn6_sock); in vxlan_vs_add_del_vninode() 65 vs = rtnl_dereference(vxlan->vn4_sock); in vxlan_vs_add_del_vninode() 74 void vxlan_vs_add_vnigrp(struct vxlan_dev *vxlan, in vxlan_vs_add_vnigrp() argument 78 struct vxlan_net *vn = net_generic(vxlan->net, vxlan_net_id); in vxlan_vs_add_vnigrp() 79 struct vxlan_vni_group *vg = rtnl_dereference(vxlan->vnigrp); in vxlan_vs_add_vnigrp() 94 node->vxlan = vxlan; in vxlan_vs_add_vnigrp() 100 void vxlan_vs_del_vnigrp(struct vxlan_dev *vxlan) in vxlan_vs_del_vnigrp() argument 102 struct vxlan_vni_group *vg = rtnl_dereference(vxlan->vnigrp); in vxlan_vs_del_vnigrp() [all …]
|
D | vxlan_private.h | 99 vxlan_vnifilter_lookup(struct vxlan_dev *vxlan, __be32 vni) in vxlan_vnifilter_lookup() argument 103 vg = rcu_dereference_rtnl(vxlan->vnigrp); in vxlan_vnifilter_lookup() 112 int vxlan_fdb_create(struct vxlan_dev *vxlan, 118 int __vxlan_fdb_delete(struct vxlan_dev *vxlan, 123 u32 fdb_head_index(struct vxlan_dev *vxlan, const u8 *mac, __be32 vni); 124 int vxlan_fdb_update(struct vxlan_dev *vxlan, 130 int vxlan_vni_in_use(struct net *src_net, struct vxlan_dev *vxlan, 134 int vxlan_vnigroup_init(struct vxlan_dev *vxlan); 135 void vxlan_vnigroup_uninit(struct vxlan_dev *vxlan); 139 void vxlan_vnifilter_count(struct vxlan_dev *vxlan, __be32 vni, [all …]
|
D | Makefile | 5 obj-$(CONFIG_VXLAN) += vxlan.o 7 vxlan-objs := vxlan_core.o vxlan_multicast.o vxlan_vnifilter.o
|
/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
D | vxlan.c | 72 bool mlx5_vxlan_lookup_port(struct mlx5_vxlan *vxlan, u16 port) in mlx5_vxlan_lookup_port() argument 77 if (!mlx5_vxlan_allowed(vxlan)) in mlx5_vxlan_lookup_port() 81 hash_for_each_possible_rcu(vxlan->htable, vxlanp, hlist, port) in mlx5_vxlan_lookup_port() 91 static struct mlx5_vxlan_port *vxlan_lookup_port(struct mlx5_vxlan *vxlan, u16 port) in vxlan_lookup_port() argument 95 hash_for_each_possible(vxlan->htable, vxlanp, hlist, port) in vxlan_lookup_port() 101 int mlx5_vxlan_add_port(struct mlx5_vxlan *vxlan, u16 port) in mlx5_vxlan_add_port() argument 111 ret = mlx5_vxlan_core_add_port_cmd(vxlan->mdev, port); in mlx5_vxlan_add_port() 117 mutex_lock(&vxlan->sync_lock); in mlx5_vxlan_add_port() 118 hash_add_rcu(vxlan->htable, &vxlanp->hlist, port); in mlx5_vxlan_add_port() 119 mutex_unlock(&vxlan->sync_lock); in mlx5_vxlan_add_port() [all …]
|
D | vxlan.h | 45 static inline bool mlx5_vxlan_allowed(struct mlx5_vxlan *vxlan) in mlx5_vxlan_allowed() argument 50 return !IS_ERR_OR_NULL(vxlan); in mlx5_vxlan_allowed() 55 void mlx5_vxlan_destroy(struct mlx5_vxlan *vxlan); 56 int mlx5_vxlan_add_port(struct mlx5_vxlan *vxlan, u16 port); 57 int mlx5_vxlan_del_port(struct mlx5_vxlan *vxlan, u16 port); 58 bool mlx5_vxlan_lookup_port(struct mlx5_vxlan *vxlan, u16 port); 59 void mlx5_vxlan_reset_to_default(struct mlx5_vxlan *vxlan); 63 static inline void mlx5_vxlan_destroy(struct mlx5_vxlan *vxlan) { return; } in mlx5_vxlan_destroy() argument 64 static inline int mlx5_vxlan_add_port(struct mlx5_vxlan *vxlan, u16 port) { return -EOPNOTSUPP; } in mlx5_vxlan_add_port() argument 65 static inline int mlx5_vxlan_del_port(struct mlx5_vxlan *vxlan, u16 port) { return -EOPNOTSUPP; } in mlx5_vxlan_del_port() argument [all …]
|
/drivers/net/ethernet/mellanox/mlx5/core/en/ |
D | tc_tun_vxlan.c | 32 if (!mlx5_vxlan_lookup_port(priv->mdev->vxlan, in mlx5e_tc_tun_check_udp_dport_vxlan() 69 if (!mlx5_vxlan_lookup_port(priv->mdev->vxlan, dst_port)) { in mlx5e_tc_tun_init_encap_attr_vxlan() 148 const struct vxlan_dev *vxlan = netdev_priv(mirred_dev); in mlx5e_tc_tun_get_remote_ifindex() local 149 const struct vxlan_rdst *dst = &vxlan->default_dst; in mlx5e_tc_tun_get_remote_ifindex()
|
/drivers/net/ethernet/qlogic/qed/ |
D | qed_sp_commands.c | 130 if (p_src->vxlan.b_update_mode || b_pf_start) in qed_set_pf_update_tunn_mode() 131 p_tun->vxlan.b_mode_enabled = p_src->vxlan.b_mode_enabled; in qed_set_pf_update_tunn_mode() 156 type = qed_tunn_clss_to_fw_clss(p_src->vxlan.tun_cls); in qed_set_tunn_cls_info() 157 p_tun->vxlan.tun_cls = type; in qed_set_tunn_cls_info() 214 &p_tun->vxlan, in qed_tunn_set_pf_update_params() 243 qed_set_vxlan_enable(p_hwfn, p_ptt, p_tun->vxlan.b_mode_enabled); in qed_set_hw_tunn_mode() 279 &p_tun->vxlan, in qed_tunn_set_pf_start_params()
|
D | qed_vf.c | 608 if (p_tun->vxlan.b_mode_enabled) in qed_vf_set_vf_start_tunn_update_param() 609 p_tun->vxlan.b_update_mode = true; in qed_vf_set_vf_start_tunn_update_param() 643 __qed_vf_update_tunn_param(&p_tun->vxlan, feat_mask, in qed_vf_update_tunn_param() 665 p_tun->vxlan.b_mode_enabled, p_tun->l2_geneve.b_mode_enabled, in qed_vf_update_tunn_param() 685 qed_vf_prep_tunn_req_tlv(p_req, &p_src->vxlan, QED_MODE_VXLAN_TUNN, in qed_vf_pf_tunnel_param_update()
|
D | qed_main.c | 395 if (tun->vxlan.tun_cls == QED_TUNN_CLSS_MAC_VLAN && in qed_fill_dev_info() 396 tun->vxlan.b_mode_enabled) in qed_fill_dev_info() 1312 tunn_info.vxlan.b_mode_enabled = true; in qed_slowpath_start() 1317 tunn_info.vxlan.tun_cls = QED_TUNN_CLSS_MAC_VLAN; in qed_slowpath_start()
|
D | qed.h | 148 struct qed_tunn_update_type vxlan; member
|
D | qed_sriov.c | 2174 p_resp->vxlan_mode = p_tun->vxlan.b_mode_enabled; in qed_iov_pf_update_tun_response() 2179 p_resp->vxlan_clss = p_tun->vxlan.tun_cls; in qed_iov_pf_update_tun_response() 2252 qed_pf_validate_tunn_mode(&tun_src->vxlan, &rc); in qed_pf_validate_modify_tunn_config() 2259 (tun_src->vxlan.tun_cls != QED_TUNN_CLSS_MAC_VLAN || in qed_pf_validate_modify_tunn_config() 2327 qed_iov_pf_update_tun_param(p_req, &tunn.vxlan, &tunn.vxlan_port, in qed_iov_vf_mbx_update_tunn_param()
|
/drivers/net/ethernet/mellanox/mlxsw/ |
D | spectrum_nve_vxlan.c | 60 struct vxlan_dev *vxlan = netdev_priv(params->dev); in mlxsw_sp_nve_vxlan_can_offload() local 61 struct vxlan_config *cfg = &vxlan->cfg; in mlxsw_sp_nve_vxlan_can_offload() 149 struct vxlan_dev *vxlan = netdev_priv(params->dev); in mlxsw_sp_nve_vxlan_config() local 150 struct vxlan_config *cfg = &vxlan->cfg; in mlxsw_sp_nve_vxlan_config()
|
D | spectrum_switchdev.c | 2393 struct vxlan_dev *vxlan = netdev_priv(vxlan_dev); in mlxsw_sp_bridge_vlan_aware_vxlan_join() local 2396 .vni = vxlan->cfg.vni, in mlxsw_sp_bridge_vlan_aware_vxlan_join() 2571 struct vxlan_dev *vxlan = netdev_priv(vxlan_dev); in mlxsw_sp_bridge_8021d_vxlan_join() local 2574 .vni = vxlan->cfg.vni, in mlxsw_sp_bridge_8021d_vxlan_join() 2807 struct vxlan_dev *vxlan = netdev_priv(vxlan_dev); in mlxsw_sp_bridge_vxlan_leave() local 2811 fid = mlxsw_sp_fid_lookup_by_vni(mlxsw_sp, vxlan->cfg.vni); in mlxsw_sp_bridge_vxlan_leave() 2861 struct vxlan_dev *vxlan = netdev_priv(dev); in mlxsw_sp_fdb_vxlan_call_notifiers() local 2867 info.remote_port = vxlan->cfg.dst_port; in mlxsw_sp_fdb_vxlan_call_notifiers() 3060 struct vxlan_dev *vxlan = netdev_priv(dev); in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process() local 3062 if (!(vxlan->cfg.flags & VXLAN_F_LEARN)) in __mlxsw_sp_fdb_notify_mac_uc_tunnel_process() [all …]
|
/drivers/net/ethernet/cisco/enic/ |
D | enic_main.c | 195 enic->vxlan.patch_level); in enic_udp_tunnel_set_port() 199 enic->vxlan.vxlan_udp_port_number = ntohs(ti->port); in enic_udp_tunnel_set_port() 220 enic->vxlan.vxlan_udp_port_number = 0; in enic_udp_tunnel_unset_port() 260 if (!(enic->vxlan.flags & ENIC_VXLAN_OUTER_IPV6)) in enic_features_check() 273 if (!(enic->vxlan.flags & ENIC_VXLAN_INNER_IPV6)) in enic_features_check() 291 if (port != enic->vxlan.vxlan_udp_port_number) in enic_features_check() 1376 if (enic->vxlan.vxlan_udp_port_number) { in enic_rq_indicate_buf() 1377 switch (enic->vxlan.patch_level) { in enic_rq_indicate_buf() 2932 enic->vxlan.flags = (u8)a1; in enic_probe() 2938 enic->vxlan.patch_level = patch_level; in enic_probe() [all …]
|
D | enic.h | 172 struct vxlan_offload vxlan; member
|
/drivers/net/ |
D | Makefile | 35 obj-$(CONFIG_VXLAN) += vxlan/
|
D | Kconfig | 238 This allows one to create vxlan virtual interfaces that provide 242 http://tools.ietf.org/html/draft-mahalingam-dutt-dcops-vxlan-02 245 will be called vxlan.
|
/drivers/net/ethernet/mellanox/mlx4/ |
D | mcg.c | 887 rule_hw->vxlan.vni = in parse_trans_rule() 888 cpu_to_be32(be32_to_cpu(spec->vxlan.vni) << 8); in parse_trans_rule() 889 rule_hw->vxlan.vni_mask = in parse_trans_rule() 890 cpu_to_be32(be32_to_cpu(spec->vxlan.vni_mask) << 8); in parse_trans_rule() 961 "VNID = %d ", be32_to_cpu(cur->vxlan.vni)); in mlx4_err_rule()
|
/drivers/net/ethernet/mellanox/mlx5/core/ |
D | Makefile | 81 mlx5_core-$(CONFIG_VXLAN) += lib/vxlan.o
|
D | main.c | 967 dev->vxlan = mlx5_vxlan_create(dev); in mlx5_init_once() 1052 mlx5_vxlan_destroy(dev->vxlan); in mlx5_init_once() 1085 mlx5_vxlan_destroy(dev->vxlan); in mlx5_cleanup_once()
|
D | en_main.c | 4589 if (mlx5_vxlan_lookup_port(priv->mdev->vxlan, port)) in mlx5e_tunnel_features_check() 4974 return mlx5_vxlan_add_port(priv->mdev->vxlan, ntohs(ti->port)); in mlx5e_vxlan_set_port() 4982 return mlx5_vxlan_del_port(priv->mdev->vxlan, ntohs(ti->port)); in mlx5e_vxlan_unset_port() 4987 if (!mlx5_vxlan_allowed(priv->mdev->vxlan)) in mlx5e_vxlan_set_netdev_info() 5010 return (mlx5_vxlan_allowed(mdev->vxlan) || mlx5_geneve_tx_allowed(mdev)); in mlx5e_tunnel_any_tx_proto_supported() 5072 if (mlx5_vxlan_allowed(mdev->vxlan) || mlx5_geneve_tx_allowed(mdev)) { in mlx5e_build_nic_netdev() 5415 mlx5_vxlan_reset_to_default(mdev->vxlan); in mlx5e_nic_disable()
|
D | en_rep.c | 1173 mlx5_vxlan_reset_to_default(mdev->vxlan); in mlx5e_uplink_rep_disable()
|
/drivers/net/ethernet/amd/xgbe/ |
D | xgbe-dev.c | 1681 unsigned int csum, tso, vlan, vxlan; in xgbe_dev_xmit() local 1699 vxlan = XGMAC_GET_BITS(packet->attributes, TX_PACKET_ATTRIBUTES, in xgbe_dev_xmit() 1832 if (vxlan) { in xgbe_dev_xmit()
|