[PATCH] eal: add cache guard to per-lcore PRNG state

Morten Brørup mb at smartsharesystems.com
Mon Sep 4 11:26:32 CEST 2023


The per-lcore random state is frequently updated by their individual
lcores, so add a cache guard to prevent CPU cache thrashing.

Depends-on: series-29415 ("clarify purpose of empty cache lines")

Signed-off-by: Morten Brørup <mb at smartsharesystems.com>
---
 lib/eal/common/rte_random.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/eal/common/rte_random.c b/lib/eal/common/rte_random.c
index 565f2401ce..3df0c7004a 100644
--- a/lib/eal/common/rte_random.c
+++ b/lib/eal/common/rte_random.c
@@ -18,6 +18,7 @@ struct rte_rand_state {
 	uint64_t z3;
 	uint64_t z4;
 	uint64_t z5;
+	RTE_CACHE_GUARD;
 } __rte_cache_aligned;
 
 /* One instance each for every lcore id-equipped thread, and one
-- 
2.17.1



More information about the dev mailing list