Backport support for fuzz runs in debug builds#80
Merged
ajtowns merged 4 commits intobitcoin-inquisition:29.xfrom Jul 12, 2025
Merged
Backport support for fuzz runs in debug builds#80ajtowns merged 4 commits intobitcoin-inquisition:29.xfrom
ajtowns merged 4 commits intobitcoin-inquisition:29.xfrom
Conversation
Threads may execute their function any time after they are spawned, so coverage could be non-deterministic. Fix this, * for the script check worker threads by disabling them while fuzzing. * for the scheduler thread by waiting for it to fully start and run the service queue.
When building with BUILD_FOR_FUZZING=OFF BUILD_FUZZ_BINARY=ON CMAKE_BUILD_TYPE=Debug allow the fuzz binary to execute given test cases (without actual fuzzing) to make it easier to reproduce fuzz test failures in a more normal debug build. In Debug builds, deterministic fuzz behaviour is controlled via a runtime variable, which is normally false, but set to true automatically in the fuzz binary, unless the FUZZ_NONDETERMINISM environment variable is set.
Co-Authored-By: Ryan Ofsky <ryan@ofsky.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
From bitcoin#32113 with some older patches from bitcoin#32158 and bitcoin#31841.