VirtualBox

Changeset 89065 in vbox


Ignore:
Timestamp:
May 17, 2021 5:40:02 AM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
144405
Message:

Intel IOMMU: bugref:9967 Add pfnLockIsOwner for I/O APIC helper (for upcoming changes).

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pdmdev.h

    r88631 r89065  
    15111511
    15121512    /**
    1513      * Check whether the threads owns the PDM lock.
     1513     * Check whether the calling thread owns the PDM lock.
    15141514     *
    15151515     * @returns @c true if the PDM lock is owned, @c false otherwise.
     
    19351935
    19361936    /**
     1937     * Checks if the calling thread owns the PDM lock.
     1938     *
     1939     * @param   pDevIns         The IOAPIC device instance.
     1940     */
     1941    DECLCALLBACKMEMBER(bool, pfnIsLockOwner,(PPDMDEVINS pDevIns));
     1942
     1943    /**
    19371944     * Private interface between the IOAPIC and IOMMU.
    19381945     *
     
    19551962
    19561963/** Current PDMIOAPICHLP version number. */
    1957 #define PDM_IOAPICHLP_VERSION                   PDM_VERSION_MAKE(0xfff0, 2, 1)
     1964#define PDM_IOAPICHLP_VERSION                   PDM_VERSION_MAKE(0xfff0, 3, 1)
    19581965
    19591966
  • trunk/src/VBox/VMM/VMMR0/PDMR0DevHlp.cpp

    r88641 r89065  
    15291529
    15301530
     1531/** @interface_method_impl{PDMIOAPICHLP,pfnUnlock} */
     1532static DECLCALLBACK(bool) pdmR0IoApicHlp_LockIsOwner(PPDMDEVINS pDevIns)
     1533{
     1534    PDMDEV_ASSERT_DEVINS(pDevIns);
     1535    return pdmLockIsOwner(pDevIns->Internal.s.pGVM);
     1536}
     1537
     1538
    15311539/** @interface_method_impl{PDMIOAPICHLP,pfnIommuMsiRemap} */
    15321540static DECLCALLBACK(int) pdmR0IoApicHlp_IommuMsiRemap(PPDMDEVINS pDevIns, uint16_t idDevice, PCMSIMSG pMsiIn, PMSIMSG pMsiOut)
     
    15611569    pdmR0IoApicHlp_Lock,
    15621570    pdmR0IoApicHlp_Unlock,
     1571    pdmR0IoApicHlp_LockIsOwner,
    15631572    pdmR0IoApicHlp_IommuMsiRemap,
    15641573    PDM_IOAPICHLP_VERSION
  • trunk/src/VBox/VMM/VMMR3/PDMDevMiscHlp.cpp

    r88639 r89065  
    141141
    142142
     143/** @interface_method_impl{PDMIOAPICHLP,pfnLockIsOwner} */
     144static DECLCALLBACK(bool) pdmR3IoApicHlp_LockIsOwner(PPDMDEVINS pDevIns)
     145{
     146    PDMDEV_ASSERT_DEVINS(pDevIns);
     147    LogFlow(("pdmR3IoApicHlp_LockIsOwner: caller='%s'/%d\n", pDevIns->pReg->szName, pDevIns->iInstance));
     148    return pdmLockIsOwner(pDevIns->Internal.s.pVMR3);
     149}
     150
     151
    143152/** @interface_method_impl{PDMIOAPICHLP,pfnIommuMsiRemap} */
    144153static DECLCALLBACK(int) pdmR3IoApicHlp_IommuMsiRemap(PPDMDEVINS pDevIns, uint16_t idDevice, PCMSIMSG pMsiIn, PMSIMSG pMsiOut)
     
    167176    pdmR3IoApicHlp_Lock,
    168177    pdmR3IoApicHlp_Unlock,
     178    pdmR3IoApicHlp_LockIsOwner,
    169179    pdmR3IoApicHlp_IommuMsiRemap,
    170180    PDM_IOAPICHLP_VERSION /* the end */
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