vfio/pci: Allow MSI-X relocation to fixup bogus PBA
The MSI-X relocation code can sometimes be used to work around bogus MSI-X capabilities, but this test for whether the PBA is outside of the specified BAR causes the device to error before we can apply a relocation. Let it proceed if we intend to relocate MSI-X anyway. Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
3412d8ec98
commit
c60807dea5
|
@ -1533,7 +1533,7 @@ static void vfio_msix_early_setup(VFIOPCIDevice *vdev, Error **errp)
|
|||
if (vdev->vendor_id == PCI_VENDOR_ID_CHELSIO &&
|
||||
(vdev->device_id & 0xff00) == 0x5800) {
|
||||
msix->pba_offset = 0x1000;
|
||||
} else {
|
||||
} else if (vdev->msix_relo == OFF_AUTOPCIBAR_OFF) {
|
||||
error_setg(errp, "hardware reports invalid configuration, "
|
||||
"MSIX PBA outside of specified BAR");
|
||||
g_free(msix);
|
||||
|
|
Loading…
Reference in a new issue