Skip to content

Fix fuzzer nondeterminism#8886

Merged
stevenfontanella merged 1 commit into
mainfrom
fuzzer-nondeterminism
Jul 7, 2026
Merged

Fix fuzzer nondeterminism#8886
stevenfontanella merged 1 commit into
mainfrom
fuzzer-nondeterminism

Conversation

@stevenfontanella

@stevenfontanella stevenfontanella commented Jul 7, 2026

Copy link
Copy Markdown
Member

Fixes #8770. The fuzzer was non-deterministic across architectures since we had two calls to pick() in the arguments to makeAtomicRMW, so the evaluation order of the two pick calls was non-deterministic. Fix this by pulling the function calls outside of the arguments of makeAtomicRMW.

Also increase the fuzz metrics test seed file size (2214 bytes -> 1020 KB) to increase the likelihood of catching similar issues in CI, and exercise more instructions in the test. This bug wasn't caught by CI in #8253.

Tested by basing #8885 on top of this which failed previously due to the non-determinism, and now succeeds.

@stevenfontanella stevenfontanella force-pushed the fuzzer-nondeterminism branch from db1ffb1 to cb69d7f Compare July 7, 2026 20:19
@stevenfontanella stevenfontanella marked this pull request as ready for review July 7, 2026 20:30
@stevenfontanella stevenfontanella requested a review from a team as a code owner July 7, 2026 20:30
@stevenfontanella stevenfontanella requested review from tlively and removed request for a team July 7, 2026 20:30
@stevenfontanella stevenfontanella enabled auto-merge (squash) July 7, 2026 20:39
@stevenfontanella stevenfontanella merged commit 36446eb into main Jul 7, 2026
16 checks passed
@stevenfontanella stevenfontanella deleted the fuzzer-nondeterminism branch July 7, 2026 20:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fuzzer is non-deterministic across architectures

2 participants