summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorWei Yang <richard.weiyang@gmail.com>2025-03-10 07:49:34 +0000
committerAndrew Morton <akpm@linux-foundation.org>2025-03-17 12:17:00 -0700
commit16b1936ae6d1858252413bf4bae8bcf247eb4b4c (patch)
tree0a58fc757694f807c48bb670e7e1062bcea03a0b /lib
parent3e1d58cd5dae95de731dc3128a7bcffa7c5e7ed9 (diff)
lib/rbtree: add random seed
Current test use pseudo rand function with fixed seed, which means the test data is the same pattern each time. Add random seed parameter to randomize the test. Link: https://lkml.kernel.org/r/20250310074938.26756-4-richard.weiyang@gmail.com Signed-off-by: Wei Yang <richard.weiyang@gmail.com> Cc: Matthew Wilcox <willy@infradead.org> Cc: Michel Lespinasse <michel@lespinasse.org> Cc: Jason Gunthorpe <jgg@nvidia.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/interval_tree_test.c3
-rw-r--r--lib/rbtree_test.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/interval_tree_test.c b/lib/interval_tree_test.c
index 12880d772945..51863077d4ec 100644
--- a/lib/interval_tree_test.c
+++ b/lib/interval_tree_test.c
@@ -19,6 +19,7 @@ __param(int, search_loops, 1000, "Number of iterations searching the tree");
__param(bool, search_all, false, "Searches will iterate all nodes in the tree");
__param(uint, max_endpoint, ~0, "Largest value for the interval's endpoint");
+__param(ullong, seed, 3141592653589793238ULL, "Random seed");
static struct rb_root_cached root = RB_ROOT_CACHED;
static struct interval_tree_node *nodes = NULL;
@@ -137,7 +138,7 @@ static int interval_tree_test_init(void)
return -ENOMEM;
}
- prandom_seed_state(&rnd, 3141592653589793238ULL);
+ prandom_seed_state(&rnd, seed);
basic_check();
search_check();
diff --git a/lib/rbtree_test.c b/lib/rbtree_test.c
index b0e0b26506cb..690cede46ac2 100644
--- a/lib/rbtree_test.c
+++ b/lib/rbtree_test.c
@@ -14,6 +14,7 @@
__param(int, nnodes, 100, "Number of nodes in the rb-tree");
__param(int, perf_loops, 1000, "Number of iterations modifying the rb-tree");
__param(int, check_loops, 100, "Number of iterations modifying and verifying the rb-tree");
+__param(ullong, seed, 3141592653589793238ULL, "Random seed");
struct test_node {
u32 key;
@@ -402,7 +403,7 @@ static int __init rbtree_test_init(void)
if (!nodes)
return -ENOMEM;
- prandom_seed_state(&rnd, 3141592653589793238ULL);
+ prandom_seed_state(&rnd, seed);
basic_check();
augmented_check();