/linux/drivers/thunderbolt/ |
H A D | tunnel.c | 15 #include "tunnel.h" 75 * seconds after tunnel is established. Since at least i915 can runtime 137 /* Add some credits for potential second DMA tunnel */ in tb_available_credits() 179 struct tb_tunnel *tunnel; in tb_tunnel_alloc() local 181 tunnel = kzalloc(sizeof(*tunnel), GFP_KERNEL); in tb_tunnel_alloc() 182 if (!tunnel) in tb_tunnel_alloc() 185 tunnel->paths = kcalloc(npaths, sizeof(tunnel->paths[0]), GFP_KERNEL); in tb_tunnel_alloc() 186 if (!tunnel->paths) { in tb_tunnel_alloc() 187 kfree(tunnel); in tb_tunnel_alloc() 191 INIT_LIST_HEAD(&tunnel->list); in tb_tunnel_alloc() [all …]
|
H A D | tunnel.h | 22 * enum tb_tunnel_state - State of a tunnel 23 * @TB_TUNNEL_INACTIVE: tb_tunnel_activate() is not called for the tunnel 24 * @TB_TUNNEL_ACTIVATING: tb_tunnel_activate() returned successfully for the tunnel 25 * @TB_TUNNEL_ACTIVE: The tunnel is fully active 34 * struct tb_tunnel - Tunnel between two ports 37 * @src_port: Source port of the tunnel 38 * @dst_port: Destination port of the tunnel. For discovered incomplete 40 * @paths: All paths required by the tunnel 42 * @pre_activate: Optional tunnel specific initialization called before 44 * @activate: Optional tunnel specific activation/deactivation [all …]
|
H A D | tb.c | 17 #include "tunnel.h" 24 * retried if the DP tunnel is still activating. 175 struct tb_tunnel *tunnel; in tb_discover_dp_resources() local 177 list_for_each_entry(tunnel, &tcm->tunnel_list, list) { in tb_discover_dp_resources() 178 if (tb_tunnel_is_dp(tunnel)) in tb_discover_dp_resources() 179 tb_discover_dp_resource(tb, tunnel->dst_port); in tb_discover_dp_resources() 188 const struct tb_tunnel *tunnel; in tb_enable_clx() local 209 * tunnel and in that case bail out. in tb_enable_clx() 211 list_for_each_entry(tunnel, &tcm->tunnel_list, list) { in tb_enable_clx() 212 if (tb_tunnel_is_dma(tunnel)) { in tb_enable_clx() [all …]
|
/linux/include/drm/display/ |
H A D | drm_dp_tunnel.h | 24 struct drm_dp_tunnel *tunnel; member 31 drm_dp_tunnel_get(struct drm_dp_tunnel *tunnel, struct ref_tracker **tracker); 34 drm_dp_tunnel_put(struct drm_dp_tunnel *tunnel, struct ref_tracker **tracker); 36 static inline void drm_dp_tunnel_ref_get(struct drm_dp_tunnel *tunnel, in drm_dp_tunnel_ref_get() argument 39 tunnel_ref->tunnel = drm_dp_tunnel_get(tunnel, &tunnel_ref->tracker); in drm_dp_tunnel_ref_get() 44 drm_dp_tunnel_put(tunnel_ref->tunnel, &tunnel_ref->tracker); in drm_dp_tunnel_ref_put() 45 tunnel_ref->tunnel = NULL; in drm_dp_tunnel_ref_put() 51 int drm_dp_tunnel_destroy(struct drm_dp_tunnel *tunnel); 53 int drm_dp_tunnel_enable_bw_alloc(struct drm_dp_tunnel *tunnel); 54 int drm_dp_tunnel_disable_bw_alloc(struct drm_dp_tunnel *tunnel); [all …]
|
/linux/net/l2tp/ |
H A D | l2tp_core.c | 143 static void l2tp_tunnel_free(struct l2tp_tunnel *tunnel) in l2tp_tunnel_free() argument 145 struct sock *sk = tunnel->sock; in l2tp_tunnel_free() 147 trace_free_tunnel(tunnel); in l2tp_tunnel_free() 151 switch (tunnel->encap) { in l2tp_tunnel_free() 162 tunnel->sock = NULL; in l2tp_tunnel_free() 166 kfree_rcu(tunnel, rcu); in l2tp_tunnel_free() 172 if (session->tunnel) in l2tp_session_free() 173 l2tp_tunnel_put(session->tunnel); in l2tp_session_free() 181 struct l2tp_tunnel *tunnel; in l2tp_sk_to_tunnel() local 186 idr_for_each_entry_ul(&pn->l2tp_tunnel_idr, tunnel, tmp, tunnel_id) { in l2tp_sk_to_tunnel() [all …]
|
H A D | l2tp_netlink.c | 38 int flags, struct l2tp_tunnel *tunnel, u8 cmd); 51 struct l2tp_tunnel *tunnel; in l2tp_nl_session_get() local 62 tunnel = l2tp_tunnel_get(net, tunnel_id); in l2tp_nl_session_get() 63 if (tunnel) { in l2tp_nl_session_get() 64 session = l2tp_session_get(net, tunnel->sock, tunnel->version, in l2tp_nl_session_get() 66 l2tp_tunnel_put(tunnel); in l2tp_nl_session_get() 105 struct l2tp_tunnel *tunnel, in l2tp_tunnel_notify() argument 116 NLM_F_ACK, tunnel, cmd); in l2tp_tunnel_notify() 193 struct l2tp_tunnel *tunnel; in l2tp_nl_cmd_tunnel_create() local 221 /* Managed tunnels take the tunnel socket from userspace. in l2tp_nl_cmd_tunnel_create() [all …]
|
H A D | l2tp_ppp.c | 27 * zero, the socket is treated as a special tunnel management socket. 150 /* Helpers to obtain tunnel/session contexts from sockets. 267 struct l2tp_tunnel *tunnel; in pppol2tp_sendmsg() local 274 /* Get session and tunnel contexts */ in pppol2tp_sendmsg() 280 tunnel = session->tunnel; in pppol2tp_sendmsg() 282 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_sendmsg() 344 struct l2tp_tunnel *tunnel; in pppol2tp_xmit() local 350 /* Get session and tunnel contexts from the socket */ in pppol2tp_xmit() 355 tunnel = session->tunnel; in pppol2tp_xmit() 357 uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; in pppol2tp_xmit() [all …]
|
H A D | l2tp_debugfs.c | 37 unsigned long tkey; /* lookup key of current tunnel */ 39 struct l2tp_tunnel *tunnel; member 40 struct l2tp_session *session; /* NULL means get next tunnel */ 46 if (pd->tunnel) in l2tp_dfs_next_tunnel() 47 l2tp_tunnel_put(pd->tunnel); in l2tp_dfs_next_tunnel() 49 pd->tunnel = l2tp_tunnel_get_next(pd->net, &pd->tkey); in l2tp_dfs_next_tunnel() 59 pd->session = l2tp_session_get_next(pd->net, pd->tunnel->sock, in l2tp_dfs_next_session() 60 pd->tunnel->version, in l2tp_dfs_next_session() 61 pd->tunnel->tunnel_id, &pd->skey); in l2tp_dfs_next_session() 84 if (!pd->tunnel) in l2tp_dfs_seq_start() [all …]
|
H A D | l2tp_core.h | 18 /* Random numbers used for internal consistency checks of tunnel and session structures */ 63 * Is linked into a per-tunnel session list and a per-net ("global") IDR tree. 71 struct l2tp_tunnel *tunnel; /* back pointer to tunnel context */ member 83 u32 nr_max; /* max NR. Depends on tunnel */ 88 struct list_head list; /* per-tunnel list node */ 133 /* L2TP tunnel configuration */ 151 /* Represents a tunnel instance. 153 * Holds the tunnel socket (either passed from userspace or directly created by the kernel). 154 * Maintains a list of sessions belonging to the tunnel instance. 163 bool acpt_newsess; /* indicates whether this tunnel accepts [all …]
|
H A D | trace.h | 28 TP_PROTO(struct l2tp_tunnel *tunnel), 29 TP_ARGS(tunnel), 34 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX); 52 TP_PROTO(struct l2tp_tunnel *tunnel), 53 TP_ARGS(tunnel), 63 memcpy(__entry->name, tunnel->name, L2TP_TUNNEL_NAME_MAX); 64 __entry->fd = tunnel->fd; 65 __entry->tid = tunnel->tunnel_id; 66 __entry->ptid = tunnel->peer_tunnel_id; 67 __entry->version = tunnel->version; [all …]
|
/linux/Documentation/networking/ |
H A D | l2tp.rst | 27 An L2TP tunnel carries one or more L2TP sessions. Each tunnel is 30 to/from L2TP. Fields in the L2TP header identify the tunnel or session 40 1) Create a tunnel socket. Exchange L2TP control protocol messages 41 with the peer over that socket in order to establish a tunnel. 43 2) Create a tunnel context in the kernel, using information 47 tunnel socket in order to establish a session. 57 Tunnel Sockets 62 To create a tunnel socket for use by L2TP, the standard POSIX 65 For example, for a tunnel using IPv4 addresses and UDP encapsulation:: 69 Or for a tunnel using IPv6 addresses and IP encapsulation:: [all …]
|
H A D | gtp.rst | 12 of a GTP tunnel endpoint. 17 GTP is the Generic Tunnel Protocol, which is a 3GPP protocol used for 24 such a tunnel between that external data network and the phone. The 25 tunnel endpoints thus reside on the phone and in the gateway. All 35 is translated into GTP *without breaking the end-to-end tunnel*. So 39 or P-GW (LTE), which terminates the tunnel, decapsulates the packet 53 The module implements the function of a tunnel endpoint, i.e. it is 70 to handle the tunnel establishment, authentication etc. and only the 159 Local GTP-U entity and tunnel identification 166 instance) per IP address. Tunnel Endpoint Identifier (TEID) are unique [all …]
|
/linux/include/uapi/linux/ |
H A D | ip6_tunnel.h | 28 char name[IFNAMSIZ]; /* name of tunnel device */ 30 __u8 proto; /* tunnel protocol */ 31 __u8 encap_limit; /* encapsulation limit for tunnel */ 32 __u8 hop_limit; /* hop limit for tunnel */ 33 __be32 flowinfo; /* traffic class and flowlabel for tunnel */ 34 __u32 flags; /* tunnel flags */ 35 struct in6_addr laddr; /* local tunnel end-point address */ 36 struct in6_addr raddr; /* remote tunnel end-point address */ 40 char name[IFNAMSIZ]; /* name of tunnel device */ 42 __u8 proto; /* tunnel protoco [all...] |
/linux/net/ipv4/ |
H A D | ip_tunnel.c | 70 /* Fallback tunnel: no source, no destination, no key, no options 72 Tunnel hash table: 74 it will match only tunnel with the same key; if it is not present, 75 it will match only keyless tunnel. 78 will match fallback tunnel. 79 Given src, dst and key, find appropriate for input tunnel. 238 struct ip_tunnel *tunnel; in __ip_tunnel_create() local 264 tunnel = netdev_priv(dev); in __ip_tunnel_create() 265 tunnel->parms = *parms; in __ip_tunnel_create() 266 tunnel in __ip_tunnel_create() 283 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_bind_dev() local 377 ip_tunnel_rcv(struct ip_tunnel * tunnel,struct sk_buff * skb,const struct tnl_ptk_info * tpi,struct metadata_dst * tun_dst,bool log_ecn_error) ip_tunnel_rcv() argument 517 struct ip_tunnel *tunnel = netdev_priv(dev); tnl_update_pmtu() local 588 struct ip_tunnel *tunnel = netdev_priv(dev); ip_md_tunnel_xmit() local 686 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_xmit() local 1070 struct ip_tunnel *tunnel = netdev_priv(dev); __ip_tunnel_change_mtu() local 1100 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_dev_free() local 1108 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_dellink() local 1122 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_get_link_net() local 1130 const struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_get_iflink() local 1275 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_changelink() local 1311 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_init() local 1343 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_uninit() local 1359 struct ip_tunnel *tunnel = netdev_priv(dev); ip_tunnel_setup() local [all...] |
H A D | ipip.c | 22 /* tunnel.c: an IP tunnel driver 24 The purpose of this driver is to provide an IP tunnel through 25 which you can tunnel network traffic transparently across subnets. 36 Made the tunnels use dev->name not tunnel: when error reporting. 42 Changed to tunnel to destination gateway in addition to the 43 tunnel's pointopoint address 51 /* Things I wish I had known when writing the tunnel driver: 55 contains the tunnel device that _we_ are. 204 /* no tunnel inf 221 struct ip_tunnel *tunnel; ipip_tunnel_rcv() local 285 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_xmit() local 391 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_tunnel_init() local 524 struct ip_tunnel *tunnel = netdev_priv(dev); ipip_fill_info() local [all...] |
H A D | ip_gre.c | 76 - traceroute does not work. I planned to relay ICMP from tunnel, 94 (branches, that exceed pmtu are pruned) and tunnel mtu 275 struct ip_tunnel *tunnel; in erspan_rcv() local 288 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in erspan_rcv() 299 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in erspan_rcv() 303 if (tunnel) { in erspan_rcv() 318 if (tunnel->collect_md) { in erspan_rcv() 354 ip_tunnel_rcv(tunnel, skb, tpi, tun_dst, log_ecn_error); in erspan_rcv() 369 struct ip_tunnel *tunnel; in __ipgre_rcv() local 372 tunnel in __ipgre_rcv() 477 struct ip_tunnel *tunnel = netdev_priv(dev); __gre_xmit() local 499 struct ip_tunnel *tunnel = netdev_priv(dev); gre_fb_xmit() local 542 struct ip_tunnel *tunnel = netdev_priv(dev); erspan_fb_xmit() local 652 struct ip_tunnel *tunnel = netdev_priv(dev); ipgre_xmit() local 704 struct ip_tunnel *tunnel = netdev_priv(dev); erspan_xmit() local 759 struct ip_tunnel *tunnel = netdev_priv(dev); gre_tap_xmit() local 787 struct ip_tunnel *tunnel = netdev_priv(dev); ipgre_link_update() local 998 struct ip_tunnel *tunnel; __gre_tunnel_init() local 1027 struct ip_tunnel *tunnel = netdev_priv(dev); ipgre_tunnel_init() local 1342 struct ip_tunnel *tunnel = netdev_priv(dev); erspan_tunnel_init() local [all...] |
H A D | ip_vti.c | 4 * virtual tunnel interface 50 struct ip_tunnel *tunnel; in vti_input() local 58 tunnel = ip_tunnel_lookup(itn, skb->dev->ifindex, flags, in vti_input() 60 if (tunnel) { in vti_input() 64 XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4 = tunnel; in vti_input() 67 skb->dev = tunnel->dev; in vti_input() 103 struct ip_tunnel *tunnel = XFRM_TUNNEL_SKB_CB(skb)->tunnel.ip4; in vti_rcv_cb() local 107 if (!tunnel) in vti_rcv_cb() 172 struct ip_tunnel *tunnel = netdev_priv(dev); vti_xmit() local 283 struct ip_tunnel *tunnel = netdev_priv(dev); vti_tunnel_xmit() local 320 struct ip_tunnel *tunnel; vti4_err() local 438 struct ip_tunnel *tunnel = netdev_priv(dev); vti_tunnel_init() local 454 struct ip_tunnel *tunnel = netdev_priv(dev); vti_fb_tunnel_init() local [all...] |
/linux/drivers/net/ |
H A D | amt.c | 121 static u32 amt_source_hash(struct amt_tunnel_list *tunnel, union amt_addr *src) in amt_source_hash() argument 123 u32 hash = jhash(src, sizeof(*src), tunnel->amt->hash_seed); in amt_source_hash() 125 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_source_hash() 182 static struct amt_source_node *amt_lookup_src(struct amt_tunnel_list *tunnel, in amt_lookup_src() argument 187 u32 hash = amt_source_hash(tunnel, src); in amt_lookup_src() 198 static u32 amt_group_hash(struct amt_tunnel_list *tunnel, union amt_addr *group) in amt_group_hash() argument 200 u32 hash = jhash(group, sizeof(*group), tunnel->amt->hash_seed); in amt_group_hash() 202 return reciprocal_scale(hash, tunnel->amt->hash_buckets); in amt_group_hash() 205 static struct amt_group_node *amt_lookup_group(struct amt_tunnel_list *tunnel, in amt_lookup_group() argument 210 u32 hash = amt_group_hash(tunnel, group); in amt_lookup_group() [all …]
|
/linux/net/ipv6/ |
H A D | sit.c | 3 * IPv6 over IPv4 tunnel device - Simple Internet Transition (SIT) 73 static bool check_6rd(struct ip_tunnel *tunnel, const struct in6_addr *v6dst, 515 struct ip_tunnel *tunnel = netdev_priv(dev); in ipip6_tunnel_uninit() local 516 struct sit_net *sitn = net_generic(tunnel->net, sit_net_id); in ipip6_tunnel_uninit() 521 ipip6_tunnel_unlink(sitn, tunnel); in ipip6_tunnel_uninit() 522 ipip6_tunnel_del_prl(tunnel, NULL); in ipip6_tunnel_uninit() 524 dst_cache_reset(&tunnel->dst_cache); in ipip6_tunnel_uninit() 525 netdev_put(dev, &tunnel->dev_tracker); in ipip6_tunnel_uninit() 606 static inline bool is_spoofed_6rd(struct ip_tunnel *tunnel, const __be32 v4addr, in is_spoofed_6rd() argument 610 if (check_6rd(tunnel, v6add in is_spoofed_6rd() 627 only_dnatted(const struct ip_tunnel * tunnel,const struct in6_addr * v6dst) only_dnatted() argument 644 packet_is_spoofed(struct sk_buff * skb,const struct iphdr * iph,struct ip_tunnel * tunnel) packet_is_spoofed() argument 682 struct ip_tunnel *tunnel; ipip6_rcv() local 755 struct ip_tunnel *tunnel; sit_tunnel_rcv() local 808 check_6rd(struct ip_tunnel * tunnel,const struct in6_addr * v6dst,__be32 * v4dst) check_6rd() argument 843 try_6rd(struct ip_tunnel * tunnel,const struct in6_addr * v6dst) try_6rd() argument 859 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_xmit() local 1052 struct ip_tunnel *tunnel = netdev_priv(dev); sit_tunnel_xmit__() local 1101 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_bind_dev() local 1412 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_dev_free() local 1425 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_setup() local 1449 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_tunnel_init() local 1468 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_fb_tunnel_init() local 1697 struct ip_tunnel *tunnel = netdev_priv(dev); ipip6_fill_info() local [all...] |
H A D | ip6_tunnel.c | 85 /* the IPv6 tunnel fallback device */ 103 * ip6_tnl_lookup - fetch tunnel matching the end-point addresses 106 * @remote: the address of the tunnel exit-point 107 * @local: the address of the tunnel entry-point 110 * tunnel matching given end-points if found, 111 * else fallback tunnel if its device is up, 178 * ip6_tnl_bucket - get head of list matching given tunnel parameters 180 * @p: parameters containing tunnel end-points 186 * Return: head of IPv6 tunnel list 205 * ip6_tnl_link - add tunnel t 793 __ip6_tnl_rcv(struct ip6_tnl * tunnel,struct sk_buff * skb,const struct tnl_ptk_info * tpi,struct metadata_dst * tun_dst,int (* dscp_ecn_decapsulate)(const struct ip6_tnl * t,const struct ipv6hdr * ipv6h,struct sk_buff * skb),bool log_ecn_err) __ip6_tnl_rcv() argument 2125 struct ip6_tnl *tunnel = netdev_priv(dev); ip6_tnl_fill_info() local 2157 struct ip6_tnl *tunnel = netdev_priv(dev); ip6_tnl_get_link_net() local [all...] |
H A D | ip6_vti.c | 67 /* the vti6 tunnel fallback device */ 79 * vti6_tnl_lookup - fetch tunnel matching the end-point addresses 81 * @remote: the address of the tunnel exit-point 82 * @local: the address of the tunnel entry-point 85 * tunnel matching given end-points if found, 86 * else fallback tunnel if its device is up, 128 * vti6_tnl_bucket - get head of list matching given tunnel parameters 130 * @p: parameters containing tunnel end-points 136 * Return: head of IPv6 tunnel list 237 * vti6_locate - find or create tunnel matchin 1075 struct ip6_tnl *tunnel = netdev_priv(dev); vti6_fill_info() local [all...] |
H A D | ip6_gre.c | 83 /* Tunnel hash table */ 94 it will match only tunnel with the same key; if it is not present, 95 it will match only keyless tunnel. 98 will match fallback tunnel. 114 /* Given src, dst and key, find appropriate for input tunnel. */ 446 net_dbg_ratelimited("%s: Too small hop limit or routing loop in tunnel!\n", in ip6gre_err() 462 net_dbg_ratelimited("%s: Too small encapsulation limit or routing loop in tunnel!\n", in ip6gre_err() 492 struct ip6_tnl *tunnel; in ip6gre_rcv() local 495 tunnel = ip6gre_tunnel_lookup(skb->dev, in ip6gre_rcv() 498 if (tunnel) { in ip6gre_rcv() 529 struct ip6_tnl *tunnel; ip6erspan_rcv() local 752 struct ip6_tnl *tunnel = netdev_priv(dev); __gre6_xmit() local 1192 ip6gre_calc_hlen(struct ip6_tnl * tunnel) ip6gre_calc_hlen() argument 1495 struct ip6_tnl *tunnel; ip6gre_tunnel_init_common() local 1535 struct ip6_tnl *tunnel; ip6gre_tunnel_init() local 1558 struct ip6_tnl *tunnel = netdev_priv(dev); ip6gre_fb_tunnel_init() local 1863 ip6erspan_calc_hlen(struct ip6_tnl * tunnel) ip6erspan_calc_hlen() argument 1878 struct ip6_tnl *tunnel; ip6erspan_tap_init() local [all...] |
/linux/include/net/ |
H A D | ip6_tunnel.h | 22 char name[IFNAMSIZ]; /* name of tunnel device */ 24 __u8 proto; /* tunnel protocol */ 25 __u8 encap_limit; /* encapsulation limit for tunnel */ 26 __u8 hop_limit; /* hop limit for tunnel */ 28 __be32 flowinfo; /* traffic class and flowlabel for tunnel */ 29 __u32 flags; /* tunnel flags */ 30 struct in6_addr laddr; /* local tunnel end-point address */ 31 struct in6_addr raddr; /* remote tunnel end-point address */ 45 /* IPv6 tunnel */ 47 struct ip6_tnl __rcu *next; /* next tunnel in list */ [all …]
|
/linux/tools/testing/selftests/bpf/prog_tests/ |
H A D | test_tunnel.c | 4 * End-to-end eBPF tunnel test suite 5 * The file tests BPF network tunnel implementation. 24 * root namespace with metadata-mode tunnel + BPF 28 * tunnel dev <type>11, ex: gre11, IPv4: 10.1.1.200, IPv6: 1::22 (overlay) 30 * Namespace at_ns0 with native tunnel 33 * tunnel dev <type>00, ex: gre00, IPv4: 10.1.1.100, IPv6: 1::11 (overlay) 42 * 2) Tnl device's egress BPF program is triggered and set the tunnel metadata, 44 * the primary or secondary ip of veth1 as the local ip of tunnel. The 46 * 3) Outer tunnel header is prepended and route the packet to veth1's egress. 48 * 5) Tunnel protoco [all...] |
/linux/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt_tc.h | 88 /* tunnel encap */ 146 /* Tunnel encap/decap hash table 148 * the same tunnel encap/decap params (ip_daddrs, vni, udp_dport) 156 /* tunnel l2 info */ 160 /* tunnel handle returned by FW */ 168 * The same data-struct is used for L2-flow table and L2-tunnel table. 169 * The L2 part of a flow or tunnel is stored in a hash table. 171 * already existing flow/tunnel must refer to it's flow handle or 205 /* tunnel encap related */ 208 /* tunnel decap related */ [all …]
|