]> 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 <Liam.Howlett@Oracle.com>
Sat, 30 Nov 2024 14:47:57 +0000 (09:47 -0500)
commit2137fba5918c00adc2b9bcbc56dfaf0594da3b67
treedea9f771e530784531f619c577ab4f07103394ae
parent81406ec0c71475b4a944c327574a8f9b399c057e
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]