Home
last modified time | relevance | path

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

12

/kernel/linux/linux-5.10/net/mpls/
Daf_mpls.c81 if (index < net->mpls.platform_labels) { in mpls_route_input_rcu()
83 rcu_dereference(net->mpls.platform_label); in mpls_route_input_rcu()
304 net->mpls.ip_ttl_propagate)) in mpls_egress()
326 net->mpls.ip_ttl_propagate)) in mpls_egress()
559 platform_label = rtnl_dereference(net->mpls.platform_label); in mpls_route_update()
575 platform_label = rtnl_dereference(net->mpls.platform_label); in find_free_label()
576 platform_labels = net->mpls.platform_labels; in find_free_label()
950 if (is_ok && *index >= net->mpls.platform_labels) { in mpls_label_ok()
956 *index = array_index_nospec(*index, net->mpls.platform_labels); in mpls_label_ok()
991 platform_label = rtnl_dereference(net->mpls.platform_label); in mpls_route_add()
[all …]
Dmpls_iptunnel.c82 !net->mpls.ip_ttl_propagate) in mpls_xmit()
83 ttl = net->mpls.default_ttl; in mpls_xmit()
91 !net->mpls.ip_ttl_propagate) in mpls_xmit()
92 ttl = net->mpls.default_ttl; in mpls_xmit()
DKconfig31 Add support for forwarding of mpls packets.
37 mpls ip tunnel support.
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/en/
Dtc_tun_mplsoudp.c34 struct mpls_shim_hdr *mpls; in generate_ip_tun_hdr() local
38 mpls = (struct mpls_shim_hdr *)(udp + 1); in generate_ip_tun_hdr()
42 *mpls = mpls_entry_encode(tun_id, tun_key->ttl, tun_key->tos, true); in generate_ip_tun_hdr()
/kernel/linux/linux-5.10/tools/testing/selftests/bpf/
Dtest_tc_tunnel.sh108 for mac in none mpls eth ; do
253 ip netns exec "${ns2}" sysctl -qw net.mpls.platform_labels=65536
254 ip netns exec "${ns2}" ip -f mpls route add 1000 dev lo
256 ip netns exec "${ns2}" sysctl -qw net.mpls.conf.testtun0.input=1
/kernel/linux/linux-5.10/Documentation/networking/
Dmpls-sysctl.rst7 /proc/sys/net/mpls/* Variables:
20 label will be recognized by the kernel and mpls forwarding
Dindex.rst71 mpls-sysctl
Dpktgen.rst196 pgset "mpls 0001000a,0002000a,0000000a" set MPLS labels (in this example
210 pgset "mpls 0" turn off mpls (or any invalid argument works too!)
333 mpls
/kernel/linux/linux-5.10/drivers/infiniband/hw/mlx5/
Dfs.c444 &ib_spec->mpls.mask.tag)) in parse_flow_attr()
449 &ib_spec->mpls.val.tag, in parse_flow_attr()
450 sizeof(ib_spec->mpls.val.tag)); in parse_flow_attr()
453 &ib_spec->mpls.mask.tag, in parse_flow_attr()
454 sizeof(ib_spec->mpls.mask.tag)); in parse_flow_attr()
459 &ib_spec->mpls.mask.tag)) in parse_flow_attr()
464 &ib_spec->mpls.val.tag, in parse_flow_attr()
465 sizeof(ib_spec->mpls.val.tag)); in parse_flow_attr()
468 &ib_spec->mpls.mask.tag, in parse_flow_attr()
469 sizeof(ib_spec->mpls.mask.tag)); in parse_flow_attr()
[all …]
/kernel/linux/linux-5.10/tools/testing/selftests/bpf/progs/
Dbpf_flow.c379 struct mpls_label *mpls, _mpls; in PROG() local
381 mpls = bpf_flow_dissect_get_header(skb, sizeof(*mpls), &_mpls); in PROG()
382 if (!mpls) in PROG()
/kernel/linux/linux-5.10/include/net/
Dflow_dissector.h79 static inline void dissector_set_mpls_lse(struct flow_dissector_key_mpls *mpls, in dissector_set_mpls_lse() argument
82 mpls->used_lses |= 1 << lse_index; in dissector_set_mpls_lse()
Dnet_namespace.h186 struct netns_mpls mpls; member
/kernel/linux/linux-5.10/net/openvswitch/
Dactions.c211 flow_key->mpls.lse[0] = lse; in set_mpls()
1323 struct ovs_action_push_mpls *mpls = nla_data(a); in do_execute_actions() local
1325 err = push_mpls(skb, key, mpls->mpls_lse, in do_execute_actions()
1326 mpls->mpls_ethertype, skb->mac_len); in do_execute_actions()
1330 struct ovs_action_add_mpls *mpls = nla_data(a); in do_execute_actions() local
1333 if (mpls->tun_flags & OVS_MPLS_L3_TUNNEL_FLAG_MASK) in do_execute_actions()
1336 err = push_mpls(skb, key, mpls->mpls_lse, in do_execute_actions()
1337 mpls->mpls_ethertype, mac_len); in do_execute_actions()
Dflow.c642 memset(&key->mpls, 0, sizeof(key->mpls)); in key_extract_l3l4()
655 memcpy(&key->mpls.lse[label_count - 1], &lse, in key_extract_l3l4()
668 key->mpls.num_labels_mask = GENMASK(label_count - 1, 0); in key_extract_l3l4()
Dflow_netlink.c1647 SW_FLOW_KEY_PUT(match, mpls.lse[i], in ovs_key_from_nlattrs()
1650 SW_FLOW_KEY_PUT(match, mpls.num_labels_mask, in ovs_key_from_nlattrs()
2137 num_labels = hweight_long(output->mpls.num_labels_mask); in __ovs_nla_put_key()
2145 mpls_key[i].mpls_lse = output->mpls.lse[i]; in __ovs_nla_put_key()
3214 const struct ovs_action_add_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions() local
3216 if (!eth_p_mpls(mpls->mpls_ethertype)) in __ovs_nla_copy_actions()
3219 if (mpls->tun_flags & OVS_MPLS_L3_TUNNEL_FLAG_MASK) { in __ovs_nla_copy_actions()
3236 eth_type = mpls->mpls_ethertype; in __ovs_nla_copy_actions()
3241 const struct ovs_action_push_mpls *mpls = nla_data(a); in __ovs_nla_copy_actions() local
3243 if (!eth_p_mpls(mpls->mpls_ethertype)) in __ovs_nla_copy_actions()
[all …]
Dflow.h139 } mpls; member
/kernel/linux/linux-5.10/net/
DMakefile77 obj-$(CONFIG_MPLS) += mpls/
DKconfig238 source "net/mpls/Kconfig"
401 tunnels like mpls. There is no netdevice associated with a light
/kernel/linux/linux-5.10/net/sched/
Dact_mpls.c230 mpls_ttl = net->mpls.default_ttl ? in tcf_mpls_init()
231 net->mpls.default_ttl : ACT_MPLS_TTL_DEFAULT; in tcf_mpls_init()
Dcls_flower.c59 struct flow_dissector_key_mpls mpls; member
1621 ret = fl_set_key_mpls(tb, &key->mpls, &mask->mpls, extack); in fl_set_key()
1792 FLOW_DISSECTOR_KEY_MPLS, mpls); in fl_init_dissector()
2869 if (fl_dump_key_mpls(skb, &key->mpls, &mask->mpls)) in fl_dump_key()
/kernel/linux/linux-5.10/net/core/
Dpktgen.c2597 static void mpls_push(__be32 *mpls, struct pktgen_dev *pkt_dev) in mpls_push() argument
2601 *mpls++ = pkt_dev->labels[i] & ~MPLS_STACK_BOTTOM; in mpls_push()
2603 mpls--; in mpls_push()
2604 *mpls |= MPLS_STACK_BOTTOM; in mpls_push()
2728 __be32 *mpls; in fill_packet_ipv4() local
2758 mpls = skb_put(skb, pkt_dev->nr_labels * sizeof(__u32)); in fill_packet_ipv4()
2760 mpls_push(mpls, pkt_dev); in fill_packet_ipv4()
2856 __be32 *mpls; in fill_packet_ipv6() local
2886 mpls = skb_put(skb, pkt_dev->nr_labels * sizeof(__u32)); in fill_packet_ipv6()
2888 mpls_push(mpls, pkt_dev); in fill_packet_ipv6()
/kernel/linux/linux-5.10/net/wireless/
Dutil.c867 struct mpls_label mpls_tmp, *mpls; in cfg80211_classify8021d() local
869 mpls = skb_header_pointer(skb, sizeof(struct ethhdr), in cfg80211_classify8021d()
870 sizeof(*mpls), &mpls_tmp); in cfg80211_classify8021d()
871 if (!mpls) in cfg80211_classify8021d()
874 ret = (ntohl(mpls->entry) & MPLS_LS_TC_MASK) in cfg80211_classify8021d()
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/steering/
Ddr_ste.c1632 DR_STE_SET_MPLS_MASK(mpls, misc2_mask, inner, bit_mask); in dr_ste_build_mpls_bit_mask()
1634 DR_STE_SET_MPLS_MASK(mpls, misc2_mask, outer, bit_mask); in dr_ste_build_mpls_bit_mask()
1644 DR_STE_SET_MPLS_TAG(mpls, misc2_mask, inner, tag); in dr_ste_build_mpls_tag()
1646 DR_STE_SET_MPLS_TAG(mpls, misc2_mask, outer, tag); in dr_ste_build_mpls_tag()
/kernel/linux/linux-5.10/drivers/infiniband/core/
Duverbs_cmd.c2826 ib_spec->mpls.size = sizeof(struct ib_flow_spec_mpls); in ib_uverbs_kern_spec_to_ib_spec_filter()
2827 memcpy(&ib_spec->mpls.val, kern_spec_val, actual_filter_sz); in ib_uverbs_kern_spec_to_ib_spec_filter()
2828 memcpy(&ib_spec->mpls.mask, kern_spec_mask, actual_filter_sz); in ib_uverbs_kern_spec_to_ib_spec_filter()
/kernel/linux/linux-5.10/include/rdma/
Dib_verbs.h2052 struct ib_flow_spec_mpls mpls; member

12