wip: parallel stateless fuzzing #11842
Draft
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.
Motivation
Stacked on #11769
Solution
SharedFuzzState
which consists of global values of runs, timer, fail_fast and rejects to determine whether the fuzz testshould_continue
using theSharedFuzzState::should_continue
SharedFuzzState
wip
TODO
max_rejects
inSharedFuzzState
to track total rejects across workers and fail accordingly 40263fdrun_worker
viaSharedState::try_claim_failure
- This will intercept other workers as well and stop fuzzing entirely e4c6060sync_interval
for theWorkerCorpus
and callWorkerCorpus::sync
--jobs
fn fuzz
and run workers usingrayon::IntoParallelIterator
PR Checklist