VirtualBox

Changeset 44509 in vbox for trunk/src


Ignore:
Timestamp:
Feb 1, 2013 1:11:17 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
83546
Message:

Document PIC and APIC callback method locking rules.

Location:
trunk/src/VBox
Files:
3 edited

Legend:

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

    r44311 r44509  
    55
    66/*
    7  * Copyright (C) 2006-2011 Oracle Corporation
     7 * Copyright (C) 2006-2013 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
  • trunk/src/VBox/Devices/PC/DevPIC.cpp

    r40907 r44509  
    929929{
    930930    PDEVPIC         pThis = PDMINS_2_DATA(pDevIns, PDEVPIC);
    931     PDMPICREG       PicReg;
    932931    int             rc;
    933932    bool            fGCEnabled;
     
    973972     * Register us as the PIC with PDM.
    974973     */
     974    PDMPICREG PicReg;
    975975    PicReg.u32Version           = PDM_PICREG_VERSION;
    976976    PicReg.pfnSetIrqR3          = picSetIrq;
  • trunk/src/VBox/VMM/VMMAll/PDMAll.cpp

    r44351 r44509  
    318318 *
    319319 * @remarks No-long-jump zone!!!
    320 */
     320 */
    321321VMMDECL(int) PDMApicGetTPR(PVMCPU pVCpu, uint8_t *pu8TPR, bool *pfPending)
    322322{
     
    324324    if (pVM->pdm.s.Apic.CTX_SUFF(pDevIns))
    325325    {
     326        /*
     327         * Note! We don't acquire the PDM lock here as we're just reading
     328         *       information. Doing so causes massive contention as this
     329         *       function is called very often by each and every VCPU.
     330         */
    326331        Assert(pVM->pdm.s.Apic.CTX_SUFF(pfnGetTPR));
    327         /* We don't acquire the PDM lock here as we're just reading information. Doing so causes massive
    328          * contention as this function is called very often by each and every VCPU.
    329          */
    330332        *pu8TPR = pVM->pdm.s.Apic.CTX_SUFF(pfnGetTPR)(pVM->pdm.s.Apic.CTX_SUFF(pDevIns), pVCpu->idCpu);
    331333        if (pfPending)
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