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 <roret...@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