[dpdk-dev] [PATCH v2 05/20] net/ice: support packet type getting
Varghese, Vipin
vipin.varghese at intel.com
Tue Dec 4 06:19:28 CET 2018
snipped
> +static inline uint32_t
> +ice_get_default_pkt_type(uint16_t ptype) {
Suggestion: should we check 'ptype >= RTE_PTYPE_UNKNOWN ' return?
> + static const uint32_t type_table[ICE_MAX_PKT_TYPE]
> + __rte_cache_aligned = {
> + /* L2 types */
> + /* [0] reserved */
> + [1] = RTE_PTYPE_L2_ETHER,
> + /* [2] - [5] reserved */
> + [6] = RTE_PTYPE_L2_ETHER_LLDP,
> + /* [7] - [10] reserved */
> + [11] = RTE_PTYPE_L2_ETHER_ARP,
> + /* [12] - [21] reserved */
> +
> + /* Non tunneled IPv4 */
> + [22] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_FRAG,
> + [23] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_NONFRAG,
> + [24] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_UDP,
> + /* [25] reserved */
> + [26] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_TCP,
> + [27] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_SCTP,
> + [28] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_L4_ICMP,
> +
> + /* IPv4 --> IPv4 */
> + [29] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [30] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [31] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [32] reserved */
> + [33] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [34] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [35] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> IPv6 */
> + [36] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [37] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [38] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [39] reserved */
> + [40] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [41] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [42] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN */
> + [43] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> IPv4 */
> + [44] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [45] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [46] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [47] reserved */
> + [48] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [49] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [50] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> IPv6 */
> + [51] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [52] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [53] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [54] reserved */
> + [55] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [56] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [57] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC */
> + [58] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC --> IPv4 */
> + [59] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [60] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [61] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [62] reserved */
> + [63] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [64] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [65] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC --> IPv6 */
> + [66] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [67] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [68] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [69] reserved */
> + [70] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [71] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [72] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC/VLAN */
> + [73] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC/VLAN --> IPv4 */
> + [74] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [75] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [76] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [77] reserved */
> + [78] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [79] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [80] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv4 --> GRE/Teredo/VXLAN --> MAC/VLAN --> IPv6 */
> + [81] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [82] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [83] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [84] reserved */
> + [85] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [86] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [87] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* Non tunneled IPv6 */
> + [88] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_FRAG,
> + [89] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_NONFRAG,
> + [90] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_UDP,
> + /* [91] reserved */
> + [92] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_TCP,
> + [93] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_SCTP,
> + [94] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_L4_ICMP,
> +
> + /* IPv6 --> IPv4 */
> + [95] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [96] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [97] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [98] reserved */
> + [99] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [100] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [101] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> IPv6 */
> + [102] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [103] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [104] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [105] reserved */
> + [106] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [107] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [108] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_IP |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN */
> + [109] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> IPv4 */
> + [110] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [111] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [112] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [113] reserved */
> + [114] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [115] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [116] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> IPv6 */
> + [117] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [118] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [119] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [120] reserved */
> + [121] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [122] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [123] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC */
> + [124] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC --> IPv4 */
> + [125] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [126] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [127] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [128] reserved */
> + [129] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [130] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [131] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC --> IPv6 */
> + [132] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [133] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [134] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [135] reserved */
> + [136] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [137] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [138] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> RTE_PTYPE_INNER_L2_ETHER |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC/VLAN */
> + [139] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC/VLAN --> IPv4 */
> + [140] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [141] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [142] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [143] reserved */
> + [144] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [145] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [146] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> +
> + /* IPv6 --> GRE/Teredo/VXLAN --> MAC/VLAN --> IPv6 */
> + [147] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_FRAG,
> + [148] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_NONFRAG,
> + [149] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_UDP,
> + /* [150] reserved */
> + [151] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_TCP,
> + [152] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_SCTP,
> + [153] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GRENAT |
> + RTE_PTYPE_INNER_L2_ETHER_VLAN |
> + RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_INNER_L4_ICMP,
> + /* [154] - [255] reserved */
> + [256] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPC,
> + [257] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPC,
> + [258] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPU,
> + [259] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPU,
> + /* [260] - [263] reserved */
> + [264] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPC,
> + [265] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPC,
> + [266] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPU,
> + [267] = RTE_PTYPE_L2_ETHER |
> RTE_PTYPE_L3_IPV6_EXT_UNKNOWN |
> + RTE_PTYPE_TUNNEL_GTPU,
> +
> + /* All others reserved */
> + };
Suggestion: is it ok to use MACRO instead of array.
snipped
More information about the dev
mailing list