oxidecomputer / oxidecomputer/propolis
disks: want to be able to differentiate "kinds"
@iximeow is already working on this.
Since Jan 6, 2026.
- Dominant language
- Rust
- Stars
- 270
- Forks
- 42
- Avg merge
- 4d 5h
- Merged PRs (30d)
- 6
Description
all NVMe disks are not created equal: the characteristics of disks backed by Crucible, a file, in-memory, 9pfs, etc, all vary wildly. in the product, the only disk types (currently) are the typical Crucible-backed distributed disks and "local" volumes that are from Propolis' perspective a file-backed disk with a particular file that has desirable performance properties. a VM can have one or all of these things at the same time!
it would be nice as a guest to tell which disks you have. that is, it would be nice for nvme list in a Linux guest to tell you enough that you should put your critical data on the Crucible volume mounted at /dev/nvme2n1 and your more ephemeral information on the local volume at /dev/nvme1n1. that might be an NVMe model number, that might be a PCI device ID, could be both!
since Omicron is really what knows what a local volume is, rather than pointing Propolis at any other random file on a sled, it seems like Nexus ought to set an informative model number, but it probably makes sense for Propolis to own the device ID selection. it would be really weird for propolis-api to let you specify whatever random PCI device ID for a disk, but that comes at the cost of Propolis not really knowing if the file backing a disk is a magic fast volume "file" or a normal file on a ZFS filesystem. the latter isn't something we'll use in the product, so that might be an OK ambiguity.
could have sworn we had an issue for this, but I couldn't find one!
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.
Assessment
This issue has not been assessed yet.