fuzzers: AI-assisted cleanups#3754
Merged
Merged
Conversation
|
This PR modifies files containing For more on why we check whole files, instead of just diffs, check out the Rustonomicon |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR performs targeted cleanups across multiple fuzz targets in the OpenVMM workspace to improve fuzzing efficiency/corpus quality and to make repro runs more diagnosable by consistently initializing tracing.
Changes:
- Improve input utilization and behavior modeling in several fuzzers (e.g., more realistic/varied request bytes and richer action selection).
- Add/standardize
xtask_fuzz::init_tracing_if_repro()calls in fuzz targets that were missing them. - Switch some fuzzers to return
libfuzzer_sys::Corpusand reject unproductive inputs, and simplify fuzz-crate deps accordingly.
Reviewed changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| vm/devices/storage/storvsp/fuzz/fuzz_storvsp.rs | Makes REPORT_LUNS CDB contents less trivial by consuming more fuzz input. |
| vm/devices/storage/scsi_buffers/fuzz/fuzz_scsi_buffers.rs | Adds init_tracing_if_repro() in the fuzz entrypoint. |
| vm/devices/storage/disk_nvme/nvme_driver/fuzz/fuzz_nvme_driver.rs | Reworks to pass Unstructured through APIs; simplifies GUID generation from fuzz bytes. |
| vm/devices/storage/disk_nvme/nvme_driver/fuzz/fuzz_main.rs | Removes global input state; uses Unstructured directly and rejects malformed inputs via Corpus. |
| vm/devices/storage/disk_nvme/nvme_driver/fuzz/Cargo.toml | Drops parking_lot and removes unused-deps ignore now that libfuzzer-sys is referenced directly. |
| vm/devices/firmware/firmware_uefi/fuzz/fuzz_diagnostics.rs | Rejects empty-memory cases via Corpus and returns arbitrary::Result<()> from do_fuzz. |
| vm/devices/firmware/firmware_uefi/fuzz/Cargo.toml | Removes unused-deps ignore now that libfuzzer-sys is referenced directly. |
| vm/devices/chipset/fuzz/fuzz_cmos_rtc.rs | Introduces explicit fuzz actions (chipset event vs time manipulation) to exercise more time-related behavior. |
| vm/devices/chipset/fuzz/fuzz_battery.rs | Introduces explicit fuzz actions to interleave chipset events with battery updates. |
| support/ucs2/fuzz/fuzz_ucs2.rs | Adds init_tracing_if_repro() in the fuzz entrypoint. |
| support/sparse_mmap/fuzz/fuzz_sparse_mmap.rs | Simplifies expected-error handling and adds missing init_tracing_if_repro(). |
| Cargo.lock | Removes parking_lot from the nvme_driver fuzz crate dependency set. |
tjones60
reviewed
Jun 18, 2026
tjones60
reviewed
Jun 18, 2026
tjones60
approved these changes
Jun 18, 2026
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.
General cleanups to all of our fuzzers that should make them more efficient and have slightly better coverage, as well as fix some missing init_tracing_if_repro calls.