| /kernel/linux/linux-5.10/tools/testing/selftests/tc-testing/tc-tests/actions/ |
| D | mpls.json | 4 "name": "Add MPLS dec_ttl action with pipe opcode", 7 "mpls" 11 "$TC actions flush action mpls", 17 "cmdUnderTest": "$TC actions add action mpls dec_ttl pipe index 8", 19 "verifyCmd": "$TC actions list action mpls", 20 "matchPattern": "action order [0-9]+: mpls.*dec_ttl.*pipe.*index 8 ref", 23 "$TC actions flush action mpls" 28 "name": "Add mpls dec_ttl action with pass opcode", 31 "mpls" 35 "$TC actions flush action mpls", [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/tc-testing/tc-tests/actions/ |
| D | mpls.json | 4 "name": "Add MPLS dec_ttl action with pipe opcode", 7 "mpls" 11 "$TC actions flush action mpls", 17 "cmdUnderTest": "$TC actions add action mpls dec_ttl pipe index 8", 19 "verifyCmd": "$TC actions list action mpls", 20 "matchPattern": "action order [0-9]+: mpls.*dec_ttl.*pipe.*index 8 ref", 23 "$TC actions flush action mpls" 28 "name": "Add mpls dec_ttl action with pass opcode", 31 "mpls" 35 "$TC actions flush action mpls", [all …]
|
| /kernel/linux/linux-6.6/net/mpls/ |
| D | Kconfig | 3 # MPLS configuration 6 menuconfig MPLS config 13 MPLS remains a simple way of making tunnels. 15 If you have not heard of MPLS you probably want to say N here. 17 if MPLS 20 tristate "MPLS: GSO support" 22 This is helper module to allow segmentation of non-MPLS GSO packets 23 that have had MPLS stack entries pushed onto them and thus 24 become MPLS GSO packets. 27 tristate "MPLS: routing support" [all …]
|
| D | af_mpls.c | 10 #include <linux/mpls.h> 82 if (index < net->mpls.platform_labels) { in mpls_route_input_rcu() 84 rcu_dereference(net->mpls.platform_label); in mpls_route_input_rcu() 300 * the incoming MPLS header, otherwise decrement the in mpls_egress() 305 net->mpls.ip_ttl_propagate)) in mpls_egress() 322 * the incoming MPLS header, otherwise decrement the 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() [all …]
|
| D | mpls_iptunnel.c | 3 * mpls tunnels An implementation mpls tunnels using the light weight tunnel 12 #include <linux/mpls.h> 82 !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() 302 MODULE_ALIAS_RTNL_LWT(MPLS);
|
| D | mpls_gso.c | 3 * MPLS GSO Support 18 #include <net/mpls.h> 91 pr_info("MPLS GSO support\n"); in mpls_gso_init() 108 MODULE_DESCRIPTION("MPLS GSO support");
|
| /kernel/linux/linux-5.10/net/mpls/ |
| D | Kconfig | 3 # MPLS configuration 6 menuconfig MPLS config 13 MPLS remains a simple way of making tunnels. 15 If you have not heard of MPLS you probably want to say N here. 17 if MPLS 20 tristate "MPLS: GSO support" 22 This is helper module to allow segmentation of non-MPLS GSO packets 23 that have had MPLS stack entries pushed onto them and thus 24 become MPLS GSO packets. 27 tristate "MPLS: routing support" [all …]
|
| D | af_mpls.c | 10 #include <linux/mpls.h> 81 if (index < net->mpls.platform_labels) { in mpls_route_input_rcu() 83 rcu_dereference(net->mpls.platform_label); in mpls_route_input_rcu() 299 * the incoming MPLS header, otherwise decrement the in mpls_egress() 304 net->mpls.ip_ttl_propagate)) in mpls_egress() 321 * the incoming MPLS header, otherwise decrement the 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() [all …]
|
| D | mpls_iptunnel.c | 3 * mpls tunnels An implementation mpls tunnels using the light weight tunnel 12 #include <linux/mpls.h> 82 !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() 302 MODULE_ALIAS_RTNL_LWT(MPLS);
|
| D | mpls_gso.c | 3 * MPLS GSO Support 17 #include <net/mpls.h> 90 pr_info("MPLS GSO support\n"); in mpls_gso_init() 107 MODULE_DESCRIPTION("MPLS GSO support");
|
| /kernel/linux/linux-5.10/Documentation/networking/ |
| D | mpls-sysctl.rst | 4 MPLS Sysfs variables 7 /proc/sys/net/mpls/* Variables: 20 label will be recognized by the kernel and mpls forwarding 32 the MPLS header on imposing labels and propagated from the 33 MPLS header to the IPv4/IPv6 header on popping the last label. 35 If disabled, the MPLS transport network will appear as a 42 Default TTL value to use for MPLS packets where it cannot be
|
| D | bareudp.rst | 12 tunnelling different L3 protocols like MPLS, IP, NSH etc. inside a UDP tunnel. 16 The bareudp device supports special handling for MPLS & IP as they can have 18 MPLS procotcol can have ethertypes ETH_P_MPLS_UC (unicast) & ETH_P_MPLS_MC (multicast). 31 0x8847 (MPLS traffic). The destination port of the UDP header will be set to 39 same family. It is currently only available for IP and MPLS. This mode has to 49 For MPLS, the multiproto mode allows the tunnel to handle both unicast 50 and multicast MPLS packets.
|
| /kernel/linux/linux-6.6/Documentation/networking/ |
| D | mpls-sysctl.rst | 4 MPLS Sysfs variables 7 /proc/sys/net/mpls/* Variables: 20 label will be recognized by the kernel and mpls forwarding 32 the MPLS header on imposing labels and propagated from the 33 MPLS header to the IPv4/IPv6 header on popping the last label. 35 If disabled, the MPLS transport network will appear as a 42 Default TTL value to use for MPLS packets where it cannot be
|
| D | bareudp.rst | 12 tunnelling different L3 protocols like MPLS, IP, NSH etc. inside a UDP tunnel. 16 The bareudp device supports special handling for MPLS & IP as they can have 18 MPLS procotcol can have ethertypes ETH_P_MPLS_UC (unicast) & ETH_P_MPLS_MC (multicast). 31 0x8847 (MPLS traffic). The destination port of the UDP header will be set to 39 same family. It is currently only available for IP and MPLS. This mode has to 49 For MPLS, the multiproto mode allows the tunnel to handle both unicast 50 and multicast MPLS packets.
|
| /kernel/linux/linux-5.10/net/sched/ |
| D | act_mpls.c | 8 #include <linux/mpls.h> 12 #include <net/mpls.h> 64 /* Ensure 'data' points at mac_header prior calling mpls manipulating in tcf_mpls_act() 137 NL_SET_ERR_MSG_MOD(extack, "Invalid MPLS label length"); in valid_label() 142 NL_SET_ERR_MSG_MOD(extack, "MPLS label out of range"); in valid_label() 186 NL_SET_ERR_MSG_MOD(extack, "No MPLS params"); in tcf_mpls_init() 196 NL_SET_ERR_MSG_MOD(extack, "Protocol must be set for MPLS pop"); in tcf_mpls_init() 200 NL_SET_ERR_MSG_MOD(extack, "Invalid protocol type for MPLS pop"); in tcf_mpls_init() 205 NL_SET_ERR_MSG_MOD(extack, "Label, TTL, TC or BOS cannot be used with MPLS pop"); in tcf_mpls_init() 212 NL_SET_ERR_MSG_MOD(extack, "Label, TTL, TC, BOS or protocol cannot be used with MPLS dec_ttl"); in tcf_mpls_init() [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/net/ |
| D | bareudp.sh | 6 # The bareudp module allows to tunnel network protocols like IP or MPLS over 9 # IPv4, IPv6 or MPLS packets on the overlay). 21 # veth address as gateway. For MPLS reachability tests, an MPLS header is 37 # | (encapsulated with MPLS label 203) | 45 # | Traffic type: IP or MPLS (depending on test) 56 # | * Encapsulate IP or MPLS packets received on veth10 into UDP | 58 # | * Decapsulate bareudp packets (either IP or MPLS, over UDP) | 67 # | Traffic type: IP or MPLS (depending on test), over UDP 78 # | * Decapsulate bareudp packets (either IP or MPLS, over UDP) | 80 # | * Encapsulate IP or MPLS packets received on veth23 into UDP | [all …]
|
| /kernel/linux/linux-6.6/net/sched/ |
| D | act_mpls.c | 8 #include <linux/mpls.h> 12 #include <net/mpls.h> 65 /* Ensure 'data' points at mac_header prior calling mpls manipulating in tcf_mpls_act() 138 NL_SET_ERR_MSG_MOD(extack, "Invalid MPLS label length"); in valid_label() 143 NL_SET_ERR_MSG_MOD(extack, "MPLS label out of range"); in valid_label() 187 NL_SET_ERR_MSG_MOD(extack, "No MPLS params"); in tcf_mpls_init() 218 NL_SET_ERR_MSG_MOD(extack, "Protocol must be set for MPLS pop"); in tcf_mpls_init() 223 NL_SET_ERR_MSG_MOD(extack, "Invalid protocol type for MPLS pop"); in tcf_mpls_init() 229 NL_SET_ERR_MSG_MOD(extack, "Label, TTL, TC or BOS cannot be used with MPLS pop"); in tcf_mpls_init() 237 NL_SET_ERR_MSG_MOD(extack, "Label, TTL, TC, BOS or protocol cannot be used with MPLS dec_ttl"); in tcf_mpls_init() [all …]
|
| /kernel/linux/linux-6.6/tools/testing/selftests/net/forwarding/ |
| D | tc_mpls_l2vpn.sh | 16 # | -encapsulate Ethernet into MPLS | 23 # | | -remove MPLS header | 27 # | (Ethernet over MPLS traffic) 33 # | -remove MPLS header | 38 # | | -encapsulate Ethernet into MPLS | 84 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 \
|
| /kernel/linux/linux-6.6/Documentation/netlink/specs/ |
| D | ovs_flow.yaml | 51 name: ovs-key-mpls 55 name: mpls-lse 300 name: ovs-action-push-mpls 304 name: mpls-lse 308 MPLS label stack entry to push 310 name: mpls-ethertype 316 indicating MPLS unicast or multicast. Other are rejected. 318 name: ovs-action-add-mpls 322 name: mpls-lse 326 MPLS label stack entry to push [all …]
|
| /kernel/linux/linux-6.6/include/uapi/linux/tc_act/ |
| D | tc_mpls.h | 26 TCA_MPLS_LABEL, /* u32; MPLS label. Lower 20 bits are used. */ 27 TCA_MPLS_TC, /* u8; MPLS TC field. Lower 3 bits are used. */ 28 TCA_MPLS_TTL, /* u8; MPLS TTL field. Must not be 0. */ 29 TCA_MPLS_BOS, /* u8; MPLS BOS field. Either 1 or 0. */
|
| /kernel/linux/linux-5.10/include/uapi/linux/tc_act/ |
| D | tc_mpls.h | 26 TCA_MPLS_LABEL, /* u32; MPLS label. Lower 20 bits are used. */ 27 TCA_MPLS_TC, /* u8; MPLS TC field. Lower 3 bits are used. */ 28 TCA_MPLS_TTL, /* u8; MPLS TTL field. Must not be 0. */ 29 TCA_MPLS_BOS, /* u8; MPLS BOS field. Either 1 or 0. */
|
| /kernel/linux/linux-5.10/tools/testing/selftests/bpf/ |
| D | test_tc_tunnel.sh | 108 for mac in none mpls eth ; do 140 echo " or: $0 <ipv4|ipv6> <tuntype> <none|mpls|eth> <data_len>" 205 if [[ "$mac" == "mpls" ]]; then 239 if [[ "$tuntype" == "ip6udp" && "$mac" == "mpls" ]]; then 240 # No support for MPLS IPv6 fou tunnel; expect failure. 250 elif [[ "$mac" == "mpls" ]]; then 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-6.6/tools/testing/selftests/bpf/ |
| D | test_tc_tunnel.sh | 118 for mac in none mpls eth ; do 150 echo " or: $0 <ipv4|ipv6> <tuntype> <none|mpls|eth> <data_len>" 215 if [[ "$mac" == "mpls" ]]; then 258 if [[ "$tuntype" == "ip6udp" && "$mac" == "mpls" ]]; then 259 # No support for MPLS IPv6 fou tunnel; expect failure. 269 elif [[ "$mac" == "mpls" ]]; then 272 ip netns exec "${ns2}" sysctl -qw net.mpls.platform_labels=65536 273 ip netns exec "${ns2}" ip -f mpls route add 1000 dev lo 275 ip netns exec "${ns2}" sysctl -qw net.mpls.conf.testtun0.input=1
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/ |
| D | mpls.c | 19 NL_SET_ERR_MSG_MOD(extack, "mpls push is supported only for mpls_uc protocol"); in tc_act_can_offload_mpls_push() 59 /* we only support mpls pop if it is the first action in tc_act_can_offload_mpls_pop() 66 NL_SET_ERR_MSG_MOD(extack, "mpls pop supported only as first action or with decap"); in tc_act_can_offload_mpls_pop() 71 NL_SET_ERR_MSG_MOD(extack, "mpls pop supported only on bareudp devices"); in tc_act_can_offload_mpls_pop()
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| D | tc_tun_mplsoudp.c | 5 #include <net/mpls.h> 35 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()
|