summaryrefslogtreecommitdiff
path: root/MAINTAINERS
diff options
context:
space:
mode:
authorMattias Rönnblom <mattias.ronnblom@ericsson.com>2019-06-28 11:01:20 +0200
committerThomas Monjalon <thomas@monjalon.net>2019-06-28 15:23:38 +0200
commit3f002f06961262667694171c20cb3443be6017c1 (patch)
tree790e80db10a0683ca714cba828505e9642a5c22a /MAINTAINERS
parent609e79841fcf981b0bc863f03985569397a49d53 (diff)
downloaddpdk-3f002f06961262667694171c20cb3443be6017c1.zip
dpdk-3f002f06961262667694171c20cb3443be6017c1.tar.gz
dpdk-3f002f06961262667694171c20cb3443be6017c1.tar.xz
eal: replace libc-based random generation with LFSR
This commit replaces rte_rand()'s use of lrand48() with a DPDK-native combined Linear Feedback Shift Register (LFSR) (also known as Tausworthe) pseudo-random number generator. This generator is faster and produces better-quality random numbers than the linear congruential generator (LCG) of lib's lrand48(). The implementation, as opposed to lrand48(), is multi-thread safe in regards to concurrent rte_rand() calls from different lcore threads. A LCG is still used, but only to seed the five per-lcore LFSR sequences. In addition, this patch also addresses the issue of the legacy implementation only producing 62 bits of pseudo randomness, while the API requires all 64 bits to be random. This pseudo-random number generator is not cryptographically secure - just like lrand48(). Bugzilla ID: 114 Bugzilla ID: 276 Signed-off-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Diffstat (limited to 'MAINTAINERS')
-rw-r--r--MAINTAINERS6
1 files changed, 6 insertions, 0 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 0c3b489..bbec198 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -227,6 +227,12 @@ M: Joyce Kong <joyce.kong@arm.com>
F: lib/librte_eal/common/include/generic/rte_ticketlock.h
F: app/test/test_ticketlock.c
+Pseudo-random Number Generation
+M: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
+F: lib/librte_eal/common/include/rte_random.h
+F: lib/librte_eal/common/rte_random.c
+F: app/test/test_rand_perf.c
+
ARM v7
M: Jan Viktorin <viktorin@rehivetech.com>
M: Gavin Hu <gavin.hu@arm.com>