VirtualBox

Changeset 90570 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Aug 7, 2021 1:01:04 PM (3 years ago)
Author:
vboxsync
Message:

VMM/PDMCritSectRw: Added a self pointer for use with queued-leave to the read/write critical sections as well. bugref:6695

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/PDMAllCritSectRw.cpp

    r90486 r90570  
    650650                    LogFlow(("PDMCritSectRwLeaveShared: [%d]=%p => R3 c=%d (%#llx)\n", i, pThis, c, u64State));
    651651                    AssertFatal(i < RT_ELEMENTS(pVCpu->pdm.s.apQueuedCritSectRwShrdLeaves));
    652 /** @todo This doesn't work any more for devices. */
    653                     pVCpu->pdm.s.apQueuedCritSectRwShrdLeaves[i] = MMHyperCCToR3(pVM, pThis);
     652                    pVCpu->pdm.s.apQueuedCritSectRwShrdLeaves[i] = pThis->s.pSelfR3;
    654653                    VMCPU_FF_SET(pVCpu, VMCPU_FF_PDM_CRITSECT);
    655654                    VMCPU_FF_SET(pVCpu, VMCPU_FF_TO_R3);
     
    12551254            LogFlow(("PDMCritSectRwLeaveShared: [%d]=%p => R3\n", i, pThis));
    12561255            AssertFatal(i < RT_ELEMENTS(pVCpu->pdm.s.apQueuedCritSectRwExclLeaves));
    1257 /** @todo This doesn't work anymore for devices. */
    1258             pVCpu->pdm.s.apQueuedCritSectRwExclLeaves[i] = MMHyperCCToR3(pVM, pThis);
     1256            pVCpu->pdm.s.apQueuedCritSectRwExclLeaves[i] = pThis->s.pSelfR3;
    12591257            VMCPU_FF_SET(pVCpu, VMCPU_FF_PDM_CRITSECT);
    12601258            VMCPU_FF_SET(pVCpu, VMCPU_FF_TO_R3);
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