[PATCH v4 30/45] common/iavf: use rte stdatomic API

Tyler Retzlaff roretzla at linux.microsoft.com
Sat Apr 20 01:06:28 CEST 2024


Replace the use of gcc builtin __atomic_xxx intrinsics with
corresponding rte_atomic_xxx optional rte stdatomic API.

Signed-off-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
Acked-by: Stephen Hemminger <stephen at networkplumber.org>
---
 drivers/common/iavf/iavf_impl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/common/iavf/iavf_impl.c b/drivers/common/iavf/iavf_impl.c
index 8919b0e..c0ff301 100644
--- a/drivers/common/iavf/iavf_impl.c
+++ b/drivers/common/iavf/iavf_impl.c
@@ -18,7 +18,7 @@ enum iavf_status
 			u64 size,
 			u32 alignment)
 {
-	static uint64_t iavf_dma_memzone_id;
+	static RTE_ATOMIC(uint64_t) iavf_dma_memzone_id;
 	const struct rte_memzone *mz = NULL;
 	char z_name[RTE_MEMZONE_NAMESIZE];
 
@@ -26,7 +26,7 @@ enum iavf_status
 		return IAVF_ERR_PARAM;
 
 	snprintf(z_name, sizeof(z_name), "iavf_dma_%" PRIu64,
-		__atomic_fetch_add(&iavf_dma_memzone_id, 1, __ATOMIC_RELAXED));
+		rte_atomic_fetch_add_explicit(&iavf_dma_memzone_id, 1, rte_memory_order_relaxed));
 	mz = rte_memzone_reserve_bounded(z_name, size, SOCKET_ID_ANY,
 					 RTE_MEMZONE_IOVA_CONTIG, alignment,
 					 RTE_PGSIZE_2M);
-- 
1.8.3.1



More information about the dev mailing list