Skip to content

Conversation

yash-atreya
Copy link
Member

@yash-atreya yash-atreya commented Sep 26, 2025

Motivation

Stacked on #11769

Solution

  • Introduce SharedFuzzState which consists of global values of runs, timer, fail_fast and rejects to determine whether the fuzz test should_continue using the SharedFuzzState::should_continue
  • Fuzz workers atomically update the values in SharedFuzzState

wip

TODO

  • Add max_rejects in SharedFuzzState to track total rejects across workers and fail accordingly 40263fd
  • Set failures in run_worker via SharedState::try_claim_failure - This will intercept other workers as well and stop fuzzing entirely e4c6060
  • Introduce sync_interval for the WorkerCorpus and call WorkerCorpus::sync
  • Determine number of workers - all available cores / --jobs
  • Integrate into fn fuzz and run workers using rayon::IntoParallelIterator

PR Checklist

  • Added Tests
  • Added Documentation
  • Breaking changes

@yash-atreya yash-atreya changed the base branch from master to yash/shared-corpus September 26, 2025 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

1 participant