Have internal tests use folly::Random instead of rand_r
[folly.git] / folly / test / SmallLocksTest.cpp
index 61cea46718929c6b0f8f23ae4d7050dc697826b0..509641263a453443240ee22023bbd5b081f9dd9f 100644 (file)
@@ -15,6 +15,9 @@
  */
 
 #include <folly/SmallLocks.h>
+
+#include <folly/Random.h>
+
 #include <cassert>
 #include <cstdio>
 #include <mutex>
@@ -58,7 +61,7 @@ LockedVal v;
 void splock_test() {
 
   const int max = 1000;
-  unsigned int seed = (uintptr_t)pthread_self();
+  auto rng = folly::ThreadLocalPRNG();
   for (int i = 0; i < max; i++) {
     folly::asm_pause();
     MSLGuard g(v.lock);
@@ -68,7 +71,7 @@ void splock_test() {
       EXPECT_EQ(first, v.ar[i]);
     }
 
-    int byte = rand_r(&seed);
+    int byte = folly::Random::rand32(rng);
     memset(v.ar, char(byte), sizeof v.ar);
   }
 }