VirtualBox

Changeset 85865 in vbox for trunk/src/VBox/Devices/PC


Ignore:
Timestamp:
Aug 21, 2020 1:22:43 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
140034
Message:

AMD IOMMU: bugref:9654 I/O APIC will use the southbridge I/O PCI address when the source PCI BDF is invalid (e.g. HPET).
For instance, this fixes booting of the Ubuntu 17.04 guest when I deliberately corrupt the ACPI checksum of the IOMMU tables.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/PC/DevIoApic.cpp

    r85487 r85865  
    522522        MSIMSG MsiIn;
    523523        ioapicGetMsiFromApicIntr(&ApicIntr, &MsiIn);
    524         Assert(PCIBDF_IS_VALID(uBusDevFn));
     524        if (!PCIBDF_IS_VALID(uBusDevFn))
     525            uBusDevFn = VBOX_PCI_BDF_SB_IOAPIC;
    525526        int rcRemap = pThisCC->pIoApicHlp->pfnIommuMsiRemap(pDevIns, uBusDevFn, &MsiIn, &MsiOut);
    526527        if (RT_SUCCESS(rcRemap))
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette