Chelsio T4 has old MSIX PBA offset bug There exists a bug with Chelsio NICs T4 that causes the following error: kvm: -device vfio-pci,host=0000:83:00.7,id=hostpci1.7,bus=pci.0,addr=0x11.7: vfio 0000:83:00.7: hardware reports invalid configuration, MSIX PBA outside of specified BAR I was working with a downstream Proxmox developer to try to fix this issue, and they provided me with the following change to make from line 1484 of hw/vfio/pci.c: static void vfio_msix_early_setup(VFIOPCIDevice *vdev, Error **errp) * is 0x1000, so we hard code that here. */ if (vdev->vendor_id == PCI_VENDOR_ID_CHELSIO && - (vdev->device_id & 0xff00) == 0x5800) { + ((vdev->device_id & 0xff00) == 0x5800 || + (vdev->device_id & 0xff00) == 0x1425)) { msix->pba_offset = 0x1000; } else if (vdev->msix_relo == OFF_AUTOPCIBAR_OFF) { error_setg(errp, "hardware reports invalid configuration, " However, I found that this did not fix the issue, so the bug appears to work differently than the one that was present on the T5 NICs which has already been patched. I have attached the output of my lspci -nnkvv There are no BAR resources for this device: 83:00.7 Ethernet controller [0200]: Chelsio Communications Inc Device [1425:0000] Subsystem: Chelsio Communications Inc Device [1425:0000] Physical Slot: 818 Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- SERR- device_id & 0xff00) == 0x1425)) The lower byte would always be 00. It's the wrong fix anyway, BAR4 is still missing. There exists a bug with Chelsio NICs that causes the following error: kvm: -device vfio-pci,host=0000:83:00.7,id=hostpci1.7,bus=pci.0,addr=0x11.7: vfio 0000:83:00.7: hardware reports invalid configuration, MSIX PBA outside of specified BAR This bug was fixed in later versions of Qemu, and is caused by vendor misconfigurations of their MSIX PBA. I know a catchall fix was implemented in recent versions of Qemu, as well as patches applied to hotfix it in earlier versions. I encountered this bug using a Chelsio T4 device, and I believe the patches are for T5 and newer. Here is an email chain that has a patch for this situation: https://patchwork.ozlabs.org/project