Home
last modified time | relevance | path

Searched refs:mpls (Results 1 – 23 of 23) sorted by relevance

/linux/tools/testing/selftests/net/forwarding/
H A Dtc_mpls_l2vpn.sh84 action mpls mac_push label 102 \
94 action mpls pop protocol teb \
113 action mpls mac_push label 101 \
123 action mpls pop protocol teb \
H A Dtc_flower.sh556 flower $tcflags mpls lse depth 1 label 0 action continue
558 flower $tcflags mpls lse depth 1 tc 0 action continue
560 flower $tcflags mpls lse depth 1 bos 0 action continue
562 flower $tcflags mpls lse depth 1 ttl 0 action continue
566 flower $tcflags mpls lse depth 2 label 1048575 action continue
568 flower $tcflags mpls lse depth 2 tc 7 action continue
570 flower $tcflags mpls lse depth 2 bos 1 action continue
572 flower $tcflags mpls lse depth 2 ttl 255 action continue
576 flower $tcflags mpls lse depth 1 action continue
578 flower $tcflags mpls lse depth 2 action continue
[all …]
/linux/net/mpls/
H A Daf_mpls.c82 if (index < net->mpls.platform_labels) { in mpls_route_input_rcu()
84 rcu_dereference(net->mpls.platform_label); in mpls_route_input_rcu()
305 net->mpls.ip_ttl_propagate)) in mpls_egress()
327 net->mpls.ip_ttl_propagate)) in mpls_egress()
562 platform_label = rtnl_dereference(net->mpls.platform_label); in mpls_route_update()
578 platform_label = rtnl_dereference(net->mpls.platform_label); in find_free_label()
579 platform_labels = net->mpls.platform_labels; in find_free_label()
953 if (is_ok && *index >= net->mpls.platform_labels) { in mpls_label_ok()
959 *index = array_index_nospec(*index, net->mpls.platform_labels); in mpls_label_ok()
994 platform_label = rtnl_dereference(net->mpls.platform_label); in mpls_route_add()
[all …]
H A Dmpls_iptunnel.c80 !net->mpls.ip_ttl_propagate) in mpls_xmit()
81 ttl = net->mpls.default_ttl; in mpls_xmit()
89 !net->mpls.ip_ttl_propagate) in mpls_xmit()
90 ttl = net->mpls.default_ttl; in mpls_xmit()
H A DKconfig31 Add support for forwarding of mpls packets.
37 mpls ip tunnel support.
/linux/tools/testing/selftests/net/
H A Dbareudp.sh268 ip -netns "${NS0}" route add 2001:db8::203/128 src 2001:db8::200 encap mpls 203 via 2001:db8::11
269 ip -netns "${NS3}" route add 2001:db8::200/128 src 2001:db8::203 encap mpls 200 via 2001:db8::32
273 ip netns exec "${NS1}" sysctl -qw net.mpls.platform_labels=256
274 ip netns exec "${NS2}" sysctl -qw net.mpls.platform_labels=256
275 ip -netns "${NS1}" -family mpls route add 200 via inet6 2001:db8::10
276 ip -netns "${NS2}" -family mpls route add 203 via inet6 2001:db8::33
426 ip netns exec "${NS1}" sysctl -qw net.mpls.conf.bareudp_ns1.input=1
427 ip netns exec "${NS2}" sysctl -qw net.mpls.conf.bareudp_ns2.input=1
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/
H A Dtc_tun_mplsoudp.c35 struct mpls_shim_hdr *mpls; in generate_ip_tun_hdr() local
37 mpls = (struct mpls_shim_hdr *)(udp + 1); in generate_ip_tun_hdr()
41 *mpls = mpls_entry_encode(mpls_info->label, mpls_info->ttl, mpls_info->tc, mpls_info->bos); in generate_ip_tun_hdr()
/linux/tools/testing/selftests/bpf/
H A Dtest_tc_tunnel.sh127 for mac in none mpls eth ; do
283 ip netns exec "${ns2}" sysctl -qw net.mpls.platform_labels=65536
284 ip netns exec "${ns2}" ip -f mpls route add 1000 dev lo
286 ip netns exec "${ns2}" sysctl -qw net.mpls.conf.testtun0.input=1
/linux/Documentation/networking/
H A Dmpls-sysctl.rst7 /proc/sys/net/mpls/* Variables:
20 label will be recognized by the kernel and mpls forwarding
H A Dpktgen.rst197 pgset "mpls 0001000a,0002000a,0000000a" set MPLS labels (in this example
211 pgset "mpls 0" turn off mpls (or any invalid argument works too!)
342 mpls
/linux/tools/testing/selftests/bpf/progs/
H A Dbpf_flow.c395 struct mpls_label *mpls, _mpls; in PROG() local
397 mpls = bpf_flow_dissect_get_header(skb, sizeof(*mpls), &_mpls); in PROG()
398 if (!mpls) in PROG()
/linux/include/net/
H A Dflow_dissector.h95 static inline void dissector_set_mpls_lse(struct flow_dissector_key_mpls *mpls, in dissector_set_mpls_lse() argument
98 mpls->used_lses |= 1 << lse_index; in dissector_set_mpls_lse()
H A Dnet_namespace.h174 struct netns_mpls mpls; member
/linux/net/openvswitch/
H A Dactions.c219 flow_key->mpls.lse[0] = lse; in set_mpls()
1425 struct ovs_action_push_mpls *mpls = nla_data(a); in do_execute_actions() local
1427 err = push_mpls(skb, key, mpls->mpls_lse, in do_execute_actions()
1428 mpls->mpls_ethertype, skb->mac_len); in do_execute_actions()
1432 struct ovs_action_add_mpls *mpls = nla_data(a); in do_execute_actions() local
1435 if (mpls->tun_flags & OVS_MPLS_L3_TUNNEL_FLAG_MASK) in do_execute_actions()
1438 err = push_mpls(skb, key, mpls->mpls_lse, in do_execute_actions()
1439 mpls->mpls_ethertype, mac_len); in do_execute_actions()
H A Dflow.c793 memset(&key->mpls, 0, sizeof(key->mpls)); in key_extract_l3l4()
806 memcpy(&key->mpls.lse[label_count - 1], &lse, in key_extract_l3l4()
819 key->mpls.num_labels_mask = GENMASK(label_count - 1, 0); in key_extract_l3l4()
H A Dflow_netlink.c1684 SW_FLOW_KEY_PUT(match, mpls.lse[i], in ovs_key_from_nlattrs()
1687 SW_FLOW_KEY_PUT(match, mpls.num_labels_mask, in ovs_key_from_nlattrs()
2182 num_labels = hweight_long(output->mpls.num_labels_mask); in __ovs_nla_put_key()
2190 mpls_key[i].mpls_lse = output->mpls.lse[i]; in __ovs_nla_put_key()
3296 const struct ovs_action_add_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions() local
3298 if (!eth_p_mpls(mpls->mpls_ethertype)) in __ovs_nla_copy_actions()
3301 if (mpls->tun_flags & OVS_MPLS_L3_TUNNEL_FLAG_MASK) { in __ovs_nla_copy_actions()
3318 eth_type = mpls->mpls_ethertype; in __ovs_nla_copy_actions()
3323 const struct ovs_action_push_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions() local
3325 if (!eth_p_mpls(mpls->mpls_ethertype)) in __ovs_nla_copy_actions()
[all …]
H A Dflow.h153 } mpls; member
/linux/net/core/
H A Dpktgen.c2754 static void mpls_push(__be32 *mpls, struct pktgen_dev *pkt_dev) in mpls_push() argument
2758 *mpls++ = pkt_dev->labels[i] & ~MPLS_STACK_BOTTOM; in mpls_push()
2760 mpls--; in mpls_push()
2761 *mpls |= MPLS_STACK_BOTTOM; in mpls_push()
2888 __be32 *mpls; in fill_packet_ipv4() local
2918 mpls = skb_put(skb, pkt_dev->nr_labels * sizeof(__u32)); in fill_packet_ipv4()
2920 mpls_push(mpls, pkt_dev); in fill_packet_ipv4()
3016 __be32 *mpls; in fill_packet_ipv6() local
3046 mpls = skb_put(skb, pkt_dev->nr_labels * sizeof(__u32)); in fill_packet_ipv6()
3048 mpls_push(mpls, pkt_dev); in fill_packet_ipv6()
/linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/
H A Ddr_ste.h127 void DR_STE_CTX_BUILDER(mpls);
/linux/net/wireless/
H A Dutil.c952 struct mpls_label mpls_tmp, *mpls; in cfg80211_classify8021d() local
954 mpls = skb_header_pointer(skb, sizeof(struct ethhdr), in cfg80211_classify8021d()
955 sizeof(*mpls), &mpls_tmp); in cfg80211_classify8021d()
956 if (!mpls) in cfg80211_classify8021d()
959 ret = (ntohl(mpls->entry) & MPLS_LS_TC_MASK) in cfg80211_classify8021d()
/linux/net/sched/
H A Dcls_flower.c75 struct flow_dissector_key_mpls mpls; member
1999 ret = fl_set_key_mpls(tb, &key->mpls, &mask->mpls, extack); in fl_set_key()
2194 FLOW_DISSECTOR_KEY_MPLS, mpls); in fl_init_dissector()
3471 if (fl_dump_key_mpls(skb, &key->mpls, &mask->mpls)) in fl_dump_key()
/linux/net/
H A DKconfig273 source "net/mpls/Kconfig"
447 tunnels like mpls. There is no netdevice associated with a light
/linux/drivers/infiniband/core/
H A Duverbs_cmd.c2832 ib_spec->mpls.size = sizeof(struct ib_flow_spec_mpls); in ib_uverbs_kern_spec_to_ib_spec_filter()
2833 memcpy(&ib_spec->mpls.val, kern_spec_val, actual_filter_sz); in ib_uverbs_kern_spec_to_ib_spec_filter()
2834 memcpy(&ib_spec->mpls.mask, kern_spec_mask, actual_filter_sz); in ib_uverbs_kern_spec_to_ib_spec_filter()