From: Liam R. Howlett Date: Wed, 2 Mar 2022 02:35:52 +0000 (-0500) Subject: test_maple_tree: Add fuzzer test 1 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=df3ddc16f2a77129cd6bc4ed9092b9167b866c2e;p=users%2Fjedix%2Flinux-maple.git test_maple_tree: Add fuzzer test 1 Signed-off-by: Liam R. Howlett --- diff --git a/lib/test_maple_tree.c b/lib/test_maple_tree.c index fc11c183208f..c2ffc360b822 100644 --- a/lib/test_maple_tree.c +++ b/lib/test_maple_tree.c @@ -37118,6 +37118,24 @@ static noinline void check_spanning_relatives(struct maple_tree *mt) mtree_store_range(mt, 9365, 9955, NULL, GFP_KERNEL); } +static noinline void check_fuzzer(struct maple_tree *mt) +{ + /* + * 1. Causes a spanning rebalance of a single root node. + * Fixed by setting the correct limit in mast_cp_to_nodes() when the + * entire right side is consumed. + */ + mtree_insert(mt, 88, (void*)0xb1, GFP_KERNEL); // 0 + mtree_insert(mt, 84, (void*)0xa9, GFP_KERNEL); // 0 + mtree_insert(mt, 2, (void*)0x5, GFP_KERNEL); // 0 + mtree_insert(mt, 4, (void*)0x9, GFP_KERNEL); // 0 + mtree_insert(mt, 14, (void*)0x1d, GFP_KERNEL); // 0 + mtree_insert(mt, 7, (void*)0xf, GFP_KERNEL); // 0 + mtree_insert(mt, 12, (void*)0x19, GFP_KERNEL); // 0 + mtree_insert(mt, 18, (void*)0x25, GFP_KERNEL); // 0 + mtree_store_range(mt, 8, 18, (void*)0x11, GFP_KERNEL); +} + static DEFINE_MTREE(tree); static int maple_tree_seed(void) { @@ -37378,6 +37396,10 @@ static int maple_tree_seed(void) check_rev_find(&tree); mtree_destroy(&tree); + mt_init_flags(&tree, 0); + check_fuzzer(&tree); + mtree_destroy(&tree); + #if defined(BENCH) skip: