]> www.infradead.org Git - users/jedix/linux-maple.git/commit
tools/testing/radix-tree: Add maple tree fuzzer
authorLiam R. Howlett <Liam.Howlett@oracle.com>
Wed, 23 Aug 2023 16:13:52 +0000 (12:13 -0400)
committerLiam R. Howlett <howlett@gmail.com>
Mon, 27 Jan 2025 20:42:05 +0000 (15:42 -0500)
commit7f2f756a14d7b93d949c40fa01a5b6015ceaba87
tree44f92106e41e55f34a80a946cf1c152405e763a9
parent01af44abd92be474d00fc50e5dcc554896b70230
tools/testing/radix-tree: Add maple tree fuzzer

This is the introduction of the maple tree fuzzer into the radix-tree
test suite, based heavily on the work of Vasily Gorbik sent in March
2022.

The tester uses the LLVM fuzzer to automate testing of the maple tree by
randomly inserting, storing, deleting, and resetting the tree.  Testing
has been expanded to test both allocation and basic trees.

After building the fuzz-maple target with clang, just run the resulting
executable.  The llvm libfuzzer supports minimizing the steps to
reproduce a crash from a crash file.

Using V=1 on the minimized crash will result in a testcase that can be
added to the lib/test_maple_tree.c test suite.  Using V=2 can help
figure out what is happening to cause the crash.

Cc: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
tools/testing/radix-tree/.gitignore
tools/testing/radix-tree/Makefile
tools/testing/radix-tree/fuzz-maple.c [new file with mode: 0644]