VirtualBox

Changeset 84715 in vbox


Ignore:
Timestamp:
Jun 6, 2020 10:29:22 AM (4 years ago)
Author:
vboxsync
Message:

AMD IOMMU: bugref:9654 PDM: Remove duplicate pfnIoApicSendMsi interface functions.

Location:
trunk/src/VBox
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/testcase/tstDevicePdmDevHlp.cpp

    r84431 r84715  
    35063506{
    35073507    pdmR3DevHlp_ISASetIrq(pDevIns, iIrq, iLevel);
    3508 }
    3509 
    3510 
    3511 /** @interface_method_impl{PDMDEVHLPR3,pfnIoApicSendMsi} */
    3512 static DECLCALLBACK(void) pdmR3DevHlp_IoApicSendMsi(PPDMDEVINS pDevIns, RTGCPHYS GCPhys, uint32_t uValue)
    3513 {
    3514     PDMDEV_ASSERT_DEVINS(pDevIns);
    3515     LogFlow(("pdmR3DevHlp_IoApicSendMsi: caller='%s'/%d: GCPhys=%RGp uValue=%#x\n", pDevIns->pReg->szName, pDevIns->iInstance, GCPhys, uValue));
    3516 
    3517     /*
    3518      * Validate input.
    3519      */
    3520     Assert(GCPhys != 0);
    3521     Assert(uValue != 0);
    3522 
    3523     AssertFailed();
    3524 
    3525     LogFlow(("pdmR3DevHlp_IoApicSendMsi: caller='%s'/%d: returns void\n", pDevIns->pReg->szName, pDevIns->iInstance));
    35263508}
    35273509
  • trunk/src/VBox/VMM/VMMR0/PDMR0DevHlpTracing.cpp

    r84553 r84715  
    475475
    476476
    477 /** @interface_method_impl{PDMDEVHLPR0,pfnIoApicSendMsi} */
    478 DECLHIDDEN(DECLCALLBACK(void)) pdmR0DevHlpTracing_IoApicSendMsi(PPDMDEVINS pDevIns, RTGCPHYS GCPhys, uint32_t uValue)
    479 {
    480     PDMDEV_ASSERT_DEVINS(pDevIns);
    481     LogFlow(("pdmR0DevHlpTracing_IoApicSendMsi: caller='%s'/%d: GCPhys=%RGp uValue=%#x\n", pDevIns->pReg->szName, pDevIns->iInstance, GCPhys, uValue));
    482     PGVM pGVM = pDevIns->Internal.s.pGVM;
    483 
    484     DBGFTracerEvtIoApicMsi(pGVM, pDevIns->Internal.s.hDbgfTraceEvtSrc, GCPhys, uValue);
    485 
    486     uint32_t uTagSrc;
    487     pDevIns->Internal.s.pIntR3R0->uLastIrqTag = uTagSrc = pdmCalcIrqTag(pGVM, pDevIns->Internal.s.pInsR3R0->idTracing);
    488     VBOXVMM_PDM_IRQ_HILO(VMMGetCpu(pGVM), RT_LOWORD(uTagSrc), RT_HIWORD(uTagSrc));
    489 
    490     if (pGVM->pdm.s.IoApic.pDevInsR0)
    491         pGVM->pdm.s.IoApic.pfnSendMsiR0(pGVM->pdm.s.IoApic.pDevInsR0, GCPhys, uValue, uTagSrc);
    492     else
    493         AssertFatalMsgFailed(("Lazy bastards!"));
    494 
    495     LogFlow(("pdmR0DevHlpTracing_IoApicSendMsi: caller='%s'/%d: returns void\n", pDevIns->pReg->szName, pDevIns->iInstance));
    496 }
    497 
    498 
    499477/** @} */
    500478
  • trunk/src/VBox/VMM/VMMR3/PDMDevHlpTracing.cpp

    r84553 r84715  
    590590
    591591
    592 /** @interface_method_impl{PDMDEVHLPR3,pfnIoApicSendMsi} */
    593 DECLHIDDEN(DECLCALLBACK(void)) pdmR3DevHlpTracing_IoApicSendMsi(PPDMDEVINS pDevIns, RTGCPHYS GCPhys, uint32_t uValue)
    594 {
    595     PDMDEV_ASSERT_DEVINS(pDevIns);
    596     LogFlow(("pdmR3DevHlp_IoApicSendMsi: caller='%s'/%d: GCPhys=%RGp uValue=%#x\n", pDevIns->pReg->szName, pDevIns->iInstance, GCPhys, uValue));
    597 
    598     /*
    599      * Validate input.
    600      */
    601     Assert(GCPhys != 0);
    602     Assert(uValue != 0);
    603 
    604     PVM pVM = pDevIns->Internal.s.pVMR3;
    605 
    606     DBGFTracerEvtIoApicMsi(pVM, pDevIns->Internal.s.hDbgfTraceEvtSrc, GCPhys, uValue);
    607 
    608     /*
    609      * Do the job.
    610      */
    611     pdmLock(pVM);
    612     uint32_t uTagSrc;
    613     pDevIns->Internal.s.uLastIrqTag = uTagSrc = pdmCalcIrqTag(pVM, pDevIns->idTracing);
    614     VBOXVMM_PDM_IRQ_HILO(VMMGetCpu(pVM), RT_LOWORD(uTagSrc), RT_HIWORD(uTagSrc));
    615 
    616     PDMIoApicSendMsi(pVM, GCPhys, uValue, uTagSrc);  /* (The API takes the lock recursively.) */
    617 
    618     pdmUnlock(pVM);
    619 
    620     LogFlow(("pdmR3DevHlp_IoApicSendMsi: caller='%s'/%d: returns void\n", pDevIns->pReg->szName, pDevIns->iInstance));
    621 }
    622 
    623 
    624592/** @} */
    625593
Note: See TracChangeset for help on using the changeset viewer.

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