oxidecomputer / oxidecomputer/propolis

VMs using default `nvme list` from nvme-cli segfault

Open
#1,163 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
270
Forks
42
Avg merge
4d 5h
Merged PRs (30d)
6

Description

[root@rocky-test]# nvme list
Segmentation fault (core dumped)

generic nvme list likely expects nvme devices to have a model number that isn't null, using -o json produces output.

the most recent (2.3) nvme spec specifies that model number is set by the vendor as a ASCII string in section 4.5.2 and this doesn't appear to be considered an optional field.

Would it make sense to populate that field with the disk type as distributed or local?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with nvme list in the Rocky test VM and inspect how the virtual NVMe device supplies its model number. Compare the default output with nvme list -o json; done means the model field is populated and the default command completes without a segmentation fault.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.