[v1] net/iavf: fix refine protocol header error
Checks
Commit Message
Protocol header count should be changed when tunnel level is larger than 1.
Fixes: 13a7dcddd8ee ("net/iavf: fix taninted scalar")
Signed-off-by: Steve Yang <stevex.yang@intel.com>
---
drivers/net/iavf/iavf_hash.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Comments
> -----Original Message-----
> From: Steve Yang <stevex.yang@intel.com>
> Sent: Monday, October 31, 2022 2:43 PM
> To: dev@dpdk.org
> Cc: Wu, Jingjing <jingjing.wu@intel.com>; Xing, Beilei
> <beilei.xing@intel.com>; Yang, SteveX <stevex.yang@intel.com>
> Subject: [PATCH v1] net/iavf: fix refine protocol header error
>
> Protocol header count should be changed when tunnel level is larger than 1.
>
> Fixes: 13a7dcddd8ee ("net/iavf: fix taninted scalar")
>
> Signed-off-by: Steve Yang <stevex.yang@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Applied to dpdk-next-net-intel.
Thanks
Qi
@@ -1210,7 +1210,7 @@ iavf_refine_proto_hdrs_by_pattern(struct virtchnl_proto_hdrs *proto_hdrs,
struct virtchnl_proto_hdr *hdr2;
int i, shift_count = 1;
int tun_lvl = proto_hdrs->tunnel_level;
- int phdrs_count = proto_hdrs->count;
+ int phdrs_count = 0;
if (!(phint & IAVF_PHINT_GTPU_MSK) && !(phint & IAVF_PHINT_GRE))
return;
@@ -1219,6 +1219,7 @@ iavf_refine_proto_hdrs_by_pattern(struct virtchnl_proto_hdrs *proto_hdrs,
if (phint & IAVF_PHINT_LAYERS_MSK)
shift_count = 2;
+ phdrs_count = proto_hdrs->count;
/* shift headers layer */
for (i = phdrs_count - 1 + shift_count;
i > shift_count - 1; i--) {