VirtualBox

Changeset 81948 in vbox


Ignore:
Timestamp:
Nov 18, 2019 4:28:43 PM (5 years ago)
Author:
vboxsync
Message:

IOAPIC,VMM: Made the pfnSetEoi and PDMIoApicBroadcastEoi functions return VBOXSTRICTRC. bugref:9218

Location:
trunk
Files:
6 edited

Legend:

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

    r81519 r81948  
    5454VMM_INT_DECL(bool)      PDMHasApic(PVM pVM);
    5555VMM_INT_DECL(int)       PDMIoApicSetIrq(PVM pVM, uint8_t u8Irq, uint8_t u8Level, uint32_t uTagSrc);
    56 VMM_INT_DECL(int)      PDMIoApicBroadcastEoi(PVM pVM, uint8_t uVector);
     56VMM_INT_DECL(VBOXSTRICTRC) PDMIoApicBroadcastEoi(PVM pVM, uint8_t uVector);
    5757VMM_INT_DECL(int)       PDMIoApicSendMsi(PVM pVM, RTGCPHYS GCAddr, uint32_t uValue, uint32_t uTagSrc);
    5858VMM_INT_DECL(int)       PDMVmmDevHeapR3ToGCPhys(PVM pVM, RTR3PTR pv, RTGCPHYS *pGCPhys);
  • trunk/include/VBox/vmm/pdmdev.h

    r81938 r81948  
    14731473     *
    14741474     * @returns Strict VBox status code - only the following informational status codes:
    1475      * @retval  VINF_IOM_R3_MMIO_WRITE if the I/O APIC lock is contenteded and we're in R0 or RC.2
     1475     * @retval  VINF_IOM_R3_MMIO_WRITE if the I/O APIC lock is contenteded and we're in R0 or RC.
    14761476     * @retval  VINF_SUCCESS
    14771477     *
     
    14821482     *          Actually, as per 2018-07-21 this isn't true (bird).
    14831483     */
    1484     DECLCALLBACKMEMBER(int, pfnSetEoi)(PPDMDEVINS pDevIns, uint8_t u8Vector);
     1484    DECLCALLBACKMEMBER(VBOXSTRICTRC, pfnSetEoi)(PPDMDEVINS pDevIns, uint8_t u8Vector);
    14851485
    14861486    /** Just a safety precaution. */
  • trunk/src/VBox/Devices/PC/DevIoApic.cpp

    r81946 r81948  
    630630
    631631/**
    632  * @interface_method_impl{PDMIOAPICREG,pfnSetEoiR3}
    633  */
    634 static DECLCALLBACK(int) ioapicSetEoi(PPDMDEVINS pDevIns, uint8_t u8Vector)
     632 * @interface_method_impl{PDMIOAPICREG,pfnSetEoi}
     633 */
     634static DECLCALLBACK(VBOXSTRICTRC) ioapicSetEoi(PPDMDEVINS pDevIns, uint8_t u8Vector)
    635635{
    636636    PIOAPIC   pThis   = PDMDEVINS_2_DATA(pDevIns, PIOAPIC);
     
    640640
    641641    bool fRemoteIrrCleared = false;
    642     int rc = IOAPIC_LOCK(pDevIns, pThis, pThisCC, VINF_IOM_R3_MMIO_WRITE);
     642    VBOXSTRICTRC rc = IOAPIC_LOCK(pDevIns, pThis, pThisCC, VINF_IOM_R3_MMIO_WRITE);
    643643    if (rc == VINF_SUCCESS)
    644644    {
     
    677677
    678678/**
    679  * @interface_method_impl{PDMIOAPICREG,pfnSetIrqR3}
     679 * @interface_method_impl{PDMIOAPICREG,pfnSetIrq}
    680680 */
    681681static DECLCALLBACK(void) ioapicSetIrq(PPDMDEVINS pDevIns, int iIrq, int iLevel, uint32_t uTagSrc)
     
    773773
    774774/**
    775  * @interface_method_impl{PDMIOAPICREG,pfnSendMsiR3}
     775 * @interface_method_impl{PDMIOAPICREG,pfnSendMsi}
    776776 */
    777777static DECLCALLBACK(void) ioapicSendMsi(PPDMDEVINS pDevIns, RTGCPHYS GCPhys, uint32_t uValue, uint32_t uTagSrc)
  • trunk/src/VBox/VMM/VMMAll/APICAll.cpp

    r81909 r81948  
    12561256        if (fLevelTriggered)
    12571257        {
    1258             int rc = PDMIoApicBroadcastEoi(pVCpu->CTX_SUFF(pVM), uVector);
     1258            VBOXSTRICTRC rc = PDMIoApicBroadcastEoi(pVCpu->CTX_SUFF(pVM), uVector);
    12591259            if (rc == VINF_SUCCESS)
    12601260            { /* likely */ }
  • trunk/src/VBox/VMM/VMMAll/PDMAll.cpp

    r80333 r81948  
    196196 * @param   uVector         The interrupt vector corresponding to the EOI.
    197197 */
    198 VMM_INT_DECL(int) PDMIoApicBroadcastEoi(PVM pVM, uint8_t uVector)
     198VMM_INT_DECL(VBOXSTRICTRC) PDMIoApicBroadcastEoi(PVM pVM, uint8_t uVector)
    199199{
    200200    /* At present, we support only a maximum of one I/O APIC per-VM. If we ever implement having
  • trunk/src/VBox/VMM/include/PDMInternal.h

    r81938 r81948  
    673673    DECLR3CALLBACKMEMBER(void,      pfnSendMsiR3,(PPDMDEVINS pDevIns, RTGCPHYS GCAddr, uint32_t uValue, uint32_t uTagSrc));
    674674    /** @copydoc PDMIOAPICREG::pfnSetEoiR3 */
    675     DECLR3CALLBACKMEMBER(int,      pfnSetEoiR3,(PPDMDEVINS pDevIns, uint8_t u8Vector));
     675    DECLR3CALLBACKMEMBER(VBOXSTRICTRC, pfnSetEoiR3,(PPDMDEVINS pDevIns, uint8_t u8Vector));
    676676
    677677    /** Pointer to the PIC device instance - R0. */
     
    682682    DECLR0CALLBACKMEMBER(void,      pfnSendMsiR0,(PPDMDEVINS pDevIns, RTGCPHYS GCAddr, uint32_t uValue, uint32_t uTagSrc));
    683683    /** @copydoc PDMIOAPICREG::pfnSetEoiR3 */
    684     DECLR0CALLBACKMEMBER(int,      pfnSetEoiR0,(PPDMDEVINS pDevIns, uint8_t u8Vector));
     684    DECLR0CALLBACKMEMBER(VBOXSTRICTRC, pfnSetEoiR0,(PPDMDEVINS pDevIns, uint8_t u8Vector));
    685685
    686686    /** Pointer to the APIC device instance - RC Ptr. */
     
    691691    DECLRCCALLBACKMEMBER(void,      pfnSendMsiRC,(PPDMDEVINS pDevIns, RTGCPHYS GCAddr, uint32_t uValue, uint32_t uTagSrc));
    692692     /** @copydoc PDMIOAPICREG::pfnSendMsiR3 */
    693     DECLRCCALLBACKMEMBER(int,      pfnSetEoiRC,(PPDMDEVINS pDevIns, uint8_t u8Vector));
     693    DECLRCCALLBACKMEMBER(VBOXSTRICTRC, pfnSetEoiRC,(PPDMDEVINS pDevIns, uint8_t u8Vector));
    694694} PDMIOAPIC;
    695695
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