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