Symptoms:
Enable MSIX with zero vector programmed, intr proxy will not be set up, device:xxxx:xx:xx.x
VMware vSphere ESXi 5.5
VMware vCenter Server Appliance 5.5.x
VMware vCenter Server 5.5.x
Patches in https://lkml.org/lkml/2015/4/13/21 changed the way the Linux kernel programmed MSI-X vectors.
Older versions programs the MSI-X vector table before enabling MSI-X in the message control register but newer versions do the following:
This breaks the assumptions made by PCI passthru code - specifically PCIPassthruSetupInterrupt is only called when the guest touches the message control register and PCIPassthruChangeIntrSettings assumes that the message addresses have already been programmed.
To resolve this issue:
ESXi host needs to be rebooted to apply the fix.