From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 49B091B3BB for ; Tue, 4 Dec 2018 06:19:32 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 Dec 2018 21:19:31 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,312,1539673200"; d="scan'208";a="299077639" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga006.fm.intel.com with ESMTP; 03 Dec 2018 21:19:31 -0800 Received: from bgsmsx151.gar.corp.intel.com (10.224.48.42) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.408.0; Mon, 3 Dec 2018 21:19:31 -0800 Received: from bgsmsx101.gar.corp.intel.com ([169.254.1.234]) by BGSMSX151.gar.corp.intel.com ([169.254.3.245]) with mapi id 14.03.0415.000; Tue, 4 Dec 2018 10:49:28 +0530 From: "Varghese, Vipin" To: "Lu, Wenzhuo" , "dev@dpdk.org" CC: "Lu, Wenzhuo" , "Zhao1, Wei" Thread-Topic: [dpdk-dev] [PATCH v2 05/20] net/ice: support packet type getting Thread-Index: AQHUitZoLnPsnxHWPUKLByUq5YdJyKVuCsVw Date: Tue, 4 Dec 2018 05:19:28 +0000 Message-ID: <4C9E0AB70F954A408CC4ADDBF0F8FA7D4D2C4593@BGSMSX101.gar.corp.intel.com> References: <1542956179-80951-1-git-send-email-wenzhuo.lu@intel.com> <1543820821-108122-1-git-send-email-wenzhuo.lu@intel.com> <1543820821-108122-6-git-send-email-wenzhuo.lu@intel.com> In-Reply-To: <1543820821-108122-6-git-send-email-wenzhuo.lu@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiODIyMjJhNTEtZTMzMC00NTBmLTgyMWItNTJjMzdiY2Q4ZWU2IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiem9XZWgyK3JsR2NReEQ0Z1FjUzAzSjNkSVhsMmF3V2tXdDZlN1NHWjlVXC9CcEUwTXJRUmFJNnVaaW5NdnQ2dnEifQ== dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.223.10.10] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 05/20] net/ice: support packet type getting X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Dec 2018 05:19:33 -0000 snipped > +static inline uint32_t > +ice_get_default_pkt_type(uint16_t ptype) { Suggestion: should we check 'ptype >=3D RTE_PTYPE_UNKNOWN ' return? > + static const uint32_t type_table[ICE_MAX_PKT_TYPE] > + __rte_cache_aligned =3D { > + /* L2 types */ > + /* [0] reserved */ > + [1] =3D RTE_PTYPE_L2_ETHER, > + /* [2] - [5] reserved */ > + [6] =3D RTE_PTYPE_L2_ETHER_LLDP, > + /* [7] - [10] reserved */ > + [11] =3D RTE_PTYPE_L2_ETHER_ARP, > + /* [12] - [21] reserved */ > + > + /* Non tunneled IPv4 */ > + [22] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_FRAG, > + [23] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_NONFRAG, > + [24] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_UDP, > + /* [25] reserved */ > + [26] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_TCP, > + [27] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_SCTP, > + [28] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_L4_ICMP, > + > + /* IPv4 --> IPv4 */ > + [29] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GRENAT, > + > + /* IPv4 --> GRE/Teredo/VXLAN --> IPv4 */ > + [44] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_FRAG, > + [89] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_NONFRAG, > + [90] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_UDP, > + /* [91] reserved */ > + [92] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_TCP, > + [93] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_SCTP, > + [94] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_L4_ICMP, > + > + /* IPv6 --> IPv4 */ > + [95] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GRENAT, > + > + /* IPv6 --> GRE/Teredo/VXLAN --> IPv4 */ > + [110] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D 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] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPC, > + [257] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPC, > + [258] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPU, > + [259] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV4_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPU, > + /* [260] - [263] reserved */ > + [264] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPC, > + [265] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPC, > + [266] =3D RTE_PTYPE_L2_ETHER | > RTE_PTYPE_L3_IPV6_EXT_UNKNOWN | > + RTE_PTYPE_TUNNEL_GTPU, > + [267] =3D 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