[v1,2/2] common/iavf: fix wrong order of protocol header types

Message ID 20210423080736.11927-1-ting.xu@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Qi Zhang
Headers
Series [v1,1/2] common/iavf: add header types for PPPoL2TPv2oUDP |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-intel-Performance success Performance Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-testing success Testing PASS
ci/iol-abi-testing success Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

Xu, Ting April 23, 2021, 8:07 a.m. UTC
  The new virtchnl protocol header types for IPv4 and IPv6 fragment are
not added in order, which will break ABI. Move them to the end of the
list.

Signed-off-by: Ting Xu <ting.xu@intel.com>
Fixes: e6a42fd9158b ("common/iavf: add protocol header for IP fragment")
Cc: stable@dpdk.org
---
 drivers/common/iavf/virtchnl.h | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)
  

Patch

diff --git a/drivers/common/iavf/virtchnl.h b/drivers/common/iavf/virtchnl.h
index 139569787f..64c9aa8889 100644
--- a/drivers/common/iavf/virtchnl.h
+++ b/drivers/common/iavf/virtchnl.h
@@ -1415,9 +1415,7 @@  enum virtchnl_proto_hdr_type {
 	VIRTCHNL_PROTO_HDR_S_VLAN,
 	VIRTCHNL_PROTO_HDR_C_VLAN,
 	VIRTCHNL_PROTO_HDR_IPV4,
-	VIRTCHNL_PROTO_HDR_IPV4_FRAG,
 	VIRTCHNL_PROTO_HDR_IPV6,
-	VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG,
 	VIRTCHNL_PROTO_HDR_TCP,
 	VIRTCHNL_PROTO_HDR_UDP,
 	VIRTCHNL_PROTO_HDR_SCTP,
@@ -1434,6 +1432,8 @@  enum virtchnl_proto_hdr_type {
 	VIRTCHNL_PROTO_HDR_ECPRI,
 	VIRTCHNL_PROTO_HDR_L2TPV2,
 	VIRTCHNL_PROTO_HDR_PPP,
+	VIRTCHNL_PROTO_HDR_IPV4_FRAG,
+	VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG,
 };
 
 /* Protocol header field within a protocol header. */
@@ -1456,8 +1456,6 @@  enum virtchnl_proto_hdr_field {
 	VIRTCHNL_PROTO_HDR_IPV4_DSCP,
 	VIRTCHNL_PROTO_HDR_IPV4_TTL,
 	VIRTCHNL_PROTO_HDR_IPV4_PROT,
-	VIRTCHNL_PROTO_HDR_IPV4_FRAG_PKID =
-		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_IPV4_FRAG),
 	/* IPV6 */
 	VIRTCHNL_PROTO_HDR_IPV6_SRC =
 		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_IPV6),
@@ -1478,9 +1476,6 @@  enum virtchnl_proto_hdr_field {
 	VIRTCHNL_PROTO_HDR_IPV6_PREFIX64_DST,
 	VIRTCHNL_PROTO_HDR_IPV6_PREFIX96_SRC,
 	VIRTCHNL_PROTO_HDR_IPV6_PREFIX96_DST,
-	/* IPv6 Extension Header Fragment */
-	VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG_PKID =
-		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG),
 	/* TCP */
 	VIRTCHNL_PROTO_HDR_TCP_SRC_PORT =
 		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_TCP),
@@ -1523,6 +1518,12 @@  enum virtchnl_proto_hdr_field {
 	VIRTCHNL_PROTO_HDR_ECPRI_MSG_TYPE =
 		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_ECPRI),
 	VIRTCHNL_PROTO_HDR_ECPRI_PC_RTC_ID,
+	/* IPv4 Dummy Fragment */
+	VIRTCHNL_PROTO_HDR_IPV4_FRAG_PKID =
+		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_IPV4_FRAG),
+	/* IPv6 Extension Fragment */
+	VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG_PKID =
+		PROTO_HDR_FIELD_START(VIRTCHNL_PROTO_HDR_IPV6_EH_FRAG),
 };
 
 struct virtchnl_proto_hdr {