On Fri, 2020-09-11 at 19:26 -0700, Keith Busch wrote: > On Fri, Sep 04, 2020 at 11:13:25AM -0600, Jon Derrick wrote: > > Some platforms have an AHCI controller behind VMD. These platforms are > > working correctly except for a case when the AHCI MSI is programmed with > > VMD IRQ vector 0 (0xfee00000). When programmed with any other interrupt > > (0xfeeNN000), the MSI is routed correctly and is handled by VMD. Placing > > the AHCI MSI(s) in the fast-interrupt allow list solves the issue. > > The only reason we have the fast vs. slow is because of the non-posted > transactions from slow driver's interrupt handlers tanking performance > of the nvme devices sharing the same vector. The microsemi switchtec was > one of the first such devices identified that led to the current > split in the VMD domain. AHCI's driver also has non-posted transactions > in their interrupt handling, so you probably don't want those devices > sharing vectors with your fast nvme devices. Good points and I think this would be simply resolved by offsetting the starting vector and avoiding vector 0 for all vectors. Thanks