oxidecomputer / oxidecomputer/omicron
switch zone setup should be interruptable
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
When a sidecar goes away, we need to tear down the switch zone in under a minute to ensure that illumos can cleanly remove the tofino device driver. Failure to do so can leave us in a state where the tofino asic won't be properly reinitialized when the sidecar reappears, and will require the scrimlet to be rebooted.
Right now, when the HarwareMonitor kicks off an oxz_switch zone setup, it will run to completion before we reconsider whether the switch zone should be running at all. In general this is fine, but we need a mechanism to interrupt this setup if the sidecar disappears while it is in process to allow for a timely zone shutdown.
Contributor guide
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 locating HardwareMonitor and the oxz_switch zone-setup entry point, then trace how sidecar disappearance is detected and how zone shutdown is initiated. Determine where setup can be interrupted without leaving the zone running, and verify that disappearance leads to teardown in under a minute and allows clean tofino driver reinitialization.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100