Hi, Below is a patch that fixes an issue where NVMe storage is presented only via MSI-X. This issue came about as the NVMe implementation in bhyve only uses MSI-X.
Thanks to Chuck Tuffli for the initial patch. It was adjusted to deal with with both cases. Thank, Jason Tubnor Index: sys/dev/pci/nvme_pci.c =================================================================== RCS file: /cvs/src/sys/dev/pci/nvme_pci.c,v retrieving revision 1.7 diff -u -p -u -r1.7 nvme_pci.c --- sys/dev/pci/nvme_pci.c 10 Jan 2018 15:45:46 -0000 1.7 +++ sys/dev/pci/nvme_pci.c 24 Mar 2019 08:22:42 -0000 @@ -105,7 +105,7 @@ nvme_pci_attach(struct device *parent, s return; } - if (pci_intr_map_msi(pa, &ih) != 0) { + if ((pci_intr_map_msix(pa, 0, &ih) != 0) && (pci_intr_map_msi(pa, &ih) != 0)) { if (pci_intr_map(pa, &ih) != 0) { printf(": unable to map interrupt\n"); goto unmap;