Mark Kettenis wrote:
> > Date: Thu, 28 Mar 2019 09:00:35 -0700
> > From: Chris Cappuccio <ch...@nmedia.net>
> > 
> > I think the current MSI-X implementation is a minimal skeleton,
> > enough for some devices under virtualization. I don't know if it's
> > enough for NVMe on real hardware.
> 
> The main problem is that the MSI-X implementation has
> machine-depenedent bits that are not implemented on all platforms.

We do have macros everywhere though.

#define         pci_intr_map_msix(pa, vec, ihp) (-1)

I think that should be good enough to allow the code to continue building on
all platforms and fallback, no?

> > > 
> > > - 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;
> > 
> > 
> 

Reply via email to