[PATCH v6 21/23] security: remove rte marker fields

Tyler Retzlaff roretzla at linux.microsoft.com
Tue Feb 27 06:41:37 CET 2024


RTE_MARKER typedefs are a GCC extension unsupported by MSVC. Remove
RTE_MARKER fields from rte_mbuf struct.

Maintain alignment of fields after removed cacheline1 marker by placing
C11 alignas(RTE_CACHE_LINE_MIN_SIZE).

Signed-off-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
---
 doc/guides/rel_notes/release_24_03.rst | 3 +++
 lib/security/rte_security_driver.h     | 5 +++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/doc/guides/rel_notes/release_24_03.rst b/doc/guides/rel_notes/release_24_03.rst
index 67750f2..9469b92 100644
--- a/doc/guides/rel_notes/release_24_03.rst
+++ b/doc/guides/rel_notes/release_24_03.rst
@@ -166,6 +166,9 @@ Removed Items
   through new inline functions ``rte_mbuf_rearm_data()`` and
   ``rte_mbuf_rx_descriptor_fields1()`` respectively.
 
+* security: ``RTE_MARKER`` fields ``cacheline0`` and ``cacheline1``
+  have been removed from ``struct rte_security_session``.
+
 API Changes
 -----------
 
diff --git a/lib/security/rte_security_driver.h b/lib/security/rte_security_driver.h
index faa4074..18a1e3c 100644
--- a/lib/security/rte_security_driver.h
+++ b/lib/security/rte_security_driver.h
@@ -12,6 +12,8 @@
  * RTE Security Common Definitions
  */
 
+#include <stdalign.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -24,7 +26,6 @@
  * Security session to be used by library for internal usage
  */
 struct rte_security_session {
-	RTE_MARKER cacheline0;
 	uint64_t opaque_data;
 	/**< Opaque user defined data */
 	uint64_t fast_mdata;
@@ -32,7 +33,7 @@ struct rte_security_session {
 	rte_iova_t driver_priv_data_iova;
 	/**< session private data IOVA address */
 
-	RTE_MARKER cacheline1 __rte_cache_min_aligned;
+	alignas(RTE_CACHE_LINE_MIN_SIZE)
 	uint8_t driver_priv_data[];
 	/**< Private session material, variable size (depends on driver) */
 };
-- 
1.8.3.1



More information about the dev mailing list