From: Beilei Xing Date: Fri, 20 Oct 2017 03:23:15 +0000 (+0800) Subject: net/i40e: update parsing inner packet info X-Git-Tag: spdx-start~1144 X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=commitdiff_plain;h=3a112d0940a74c6cdc44ff969336eabdb7636ea2 net/i40e: update parsing inner packet info Since meta data in profile is updated, parsing inner packet information needs to be updated, too. Signed-off-by: Beilei Xing --- diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index e809613437..48db2dde39 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -11131,30 +11131,32 @@ i40e_update_customized_ptype(struct rte_eth_dev *dev, uint8_t *pkg, ptype_mapping[i].sw_ptype |= RTE_PTYPE_L3_IPV4_EXT_UNKNOWN; inner_ip = true; - } else if (!strncmp(name, "IPV4", 4) && + } else if (!strncmp(name, "IPV4FRAG", 8) && inner_ip) { ptype_mapping[i].sw_ptype |= RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN; - } else if (!strncmp(name, "IPV6", 4) && - !inner_ip) { + ptype_mapping[i].sw_ptype |= + RTE_PTYPE_INNER_L4_FRAG; + } else if (!strncmp(name, "IPV4", 4) && + inner_ip) + ptype_mapping[i].sw_ptype |= + RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN; + else if (!strncmp(name, "IPV6", 4) && + !inner_ip) { ptype_mapping[i].sw_ptype |= RTE_PTYPE_L3_IPV6_EXT_UNKNOWN; inner_ip = true; - } else if (!strncmp(name, "IPV6", 4) && + } else if (!strncmp(name, "IPV6FRAG", 8) && inner_ip) { ptype_mapping[i].sw_ptype |= RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN; - } else if (!strncmp(name, "IPV4FRAG", 8)) { - ptype_mapping[i].sw_ptype |= - RTE_PTYPE_INNER_L3_IPV4_EXT_UNKNOWN; ptype_mapping[i].sw_ptype |= RTE_PTYPE_INNER_L4_FRAG; - } else if (!strncmp(name, "IPV6FRAG", 8)) { + } else if (!strncmp(name, "IPV6", 4) && + inner_ip) ptype_mapping[i].sw_ptype |= RTE_PTYPE_INNER_L3_IPV6_EXT_UNKNOWN; - ptype_mapping[i].sw_ptype |= - RTE_PTYPE_INNER_L4_FRAG; - } else if (!strncmp(name, "GTPC", 4)) + else if (!strncmp(name, "GTPC", 4)) ptype_mapping[i].sw_ptype |= RTE_PTYPE_TUNNEL_GTPC; else if (!strncmp(name, "GTPU", 4))