oxidecomputer / oxidecomputer/propolis
phd: we should test NICs
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 270
- Forks
- 42
- Avg merge
- 4d 5h
- Merged PRs (30d)
- 6
Description
kind of a meta issue: NICs don't get tested in Propolis CI yet and we've missed bugs because of it.
- https://github.com/oxidecomputer/propolis/issues/1030 we should of course test that NICs work across reboots
- https://github.com/oxidecomputer/propolis/issues/987 we should also test that NICs work across migration
- https://github.com/oxidecomputer/propolis/issues/1019 was tickled because of NIC stuff that we probably wouldn't have seen in Propolis (maybe we should test iPXE! idk) but the most basic "poke every PCI register" fuzzing would have tripped it immediately
- https://github.com/oxidecomputer/propolis/issues/1045 makes me think in-propolis (mainly: not dependent on guest drivers) tests of virtio device lifecycle would be super neat-o
- https://github.com/oxidecomputer/propolis/pull/1051 the guest configurations that get here are weird and hard to reason about, it would be much more straightforward for a test to request 10 pairs, then 4 pairs, then reset, etc. or in the most complicated guest case: 1 pair at reset, to enable multiqueue, to 4 pairs used from the guest, to 1 at reset, and so on.
- https://github.com/oxidecomputer/propolis/issues/1052 should be very easy to validate in a PHD kind of context
it might not be unreasonable to have a similar kind of fuzzer like https://github.com/oxidecomputer/propolis/pull/966 that does some series of operations that should at least never get the device to NEEDS_RESET..
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the linked issues 1030, 987, 1019, 1045, and 1052, plus pull requests 1051 and 966, to understand the proposed NIC reboot, migration, lifecycle, fuzzing, and PHD tests. The issue does not identify files or a single entry point; completion would require narrowing these ideas into an agreed test scope and defining what NIC behavior must remain valid.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- ci-cd, networking, testing-qa
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100