]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
test_maple_tree: Add bench_slot_store()
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Thu, 29 Oct 2020 20:01:48 +0000 (16:01 -0400)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Tue, 5 Jan 2021 17:30:39 +0000 (12:30 -0500)
Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
lib/test_maple_tree.c

index e5d44dd551ec4273e1eaa5933d508e50410ad790..dd541adbecb41e93657f2a75392f517c0965cd94 100644 (file)
@@ -35276,6 +35276,20 @@ static void check_dfs_preorder(struct maple_tree *mt)
 
 }
 
+static noinline void bench_slot_store(struct maple_tree *mt)
+{
+       int i, brk = 105, max = 240, brk_start= 100, count = 10000000;
+
+       for (i = 0; i < max; i+=10)
+               mtree_store_range(mt, i, i + 5, xa_mk_value(i), GFP_KERNEL);
+
+       for (i = 0; i < count; i++) {
+               mtree_store_range(mt, brk, brk, NULL, GFP_KERNEL);
+               mtree_store_range(mt, brk_start, brk, xa_mk_value(brk),
+                                 GFP_KERNEL);
+       }
+}
+
 static noinline void bench_node_store(struct maple_tree *mt)
 {
        int i, overwrite = 76, max = 240, count = 20000000;
@@ -35383,6 +35397,12 @@ static int maple_tree_seed(void)
 
        pr_info("\nTEST STARTING\n\n");
 
+#if 1
+       mtree_init(&tree, MAPLE_ALLOC_RANGE);
+       bench_slot_store(&tree);
+       mtree_destroy(&tree);
+       goto skip;
+#endif
 #if 0
        mtree_init(&tree, MAPLE_ALLOC_RANGE);
        bench_node_store(&tree);