Thread (36 messages) 36 messages, 5 authors, 2021-04-01

[dpdk-dev] [PATCH 03/10] net: clarify endianness of 32-bit fields in VXLAN headers

From: Ivan Malov <hidden>
Date: 2021-03-12 09:32:04
Subsystem: library code, the rest · Maintainers: Andrew Morton, Linus Torvalds

These fields have network byte order. Highlight it using dedicated type.

Signed-off-by: Ivan Malov <redacted>
Reviewed-by: Andrew Rybchenko <redacted>
Reviewed-by: Andy Moreton <redacted>
---
 lib/librte_net/rte_vxlan.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/lib/librte_net/rte_vxlan.h b/lib/librte_net/rte_vxlan.h
index 2ad606165..929fa7a1d 100644
--- a/lib/librte_net/rte_vxlan.h
+++ b/lib/librte_net/rte_vxlan.h
@@ -13,6 +13,7 @@
 
 #include <stdint.h>
 
+#include <rte_byteorder.h>
 #include <rte_udp.h>
 
 
@@ -30,8 +31,8 @@ extern "C" {
  * Reserved fields (24 bits and 8 bits)
  */
 struct rte_vxlan_hdr {
-	uint32_t vx_flags; /**< flag (8) + Reserved (24). */
-	uint32_t vx_vni;   /**< VNI (24) + Reserved (8). */
+	rte_be32_t vx_flags; /**< flag (8) + Reserved (24). */
+	rte_be32_t vx_vni;   /**< VNI (24) + Reserved (8). */
 } __rte_packed;
 
 /** VXLAN tunnel header length. */
@@ -48,7 +49,7 @@ struct rte_vxlan_gpe_hdr {
 	uint8_t vx_flags;    /**< flag (8). */
 	uint8_t reserved[2]; /**< Reserved (16). */
 	uint8_t proto;       /**< next-protocol (8). */
-	uint32_t vx_vni;     /**< VNI (24) + Reserved (8). */
+	rte_be32_t vx_vni;   /**< VNI (24) + Reserved (8). */
 } __rte_packed;
 
 /** VXLAN-GPE tunnel header length. */
-- 
2.20.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help