Lines Matching defs:pLock

1368  * @param   pLock               The lock structure (output).
1370 DECLINLINE(void) pgmPhysPageMapLockForWriting(PVM pVM, PPGMPAGE pPage, PPGMPAGEMAPTLBE pTlbe, PPGMPAGEMAPLOCK pLock)
1391 pLock->uPageAndType = (uintptr_t)pPage | PGMPAGEMAPLOCK_TYPE_WRITE;
1392 pLock->pvMap = pMap;
1401 * @param pLock The lock structure (output).
1403 DECLINLINE(void) pgmPhysPageMapLockForReading(PVM pVM, PPGMPAGE pPage, PPGMPAGEMAPTLBE pTlbe, PPGMPAGEMAPLOCK pLock)
1424 pLock->uPageAndType = (uintptr_t)pPage | PGMPAGEMAPLOCK_TYPE_READ;
1425 pLock->pvMap = pMap;
1444 * @param pLock Where to store the lock information that
1449 int pgmPhysGCPhys2CCPtrInternal(PVM pVM, PPGMPAGE pPage, RTGCPHYS GCPhys, void **ppv, PPGMPAGEMAPLOCK pLock)
1480 pLock->pvPage = pv;
1481 pLock->pVCpu = pVCpu;
1488 pgmPhysPageMapLockForWriting(pVM, pPage, pTlbe, pLock);
1508 * @param pLock Where to store the lock information that
1513 int pgmPhysGCPhys2CCPtrInternalReadOnly(PVM pVM, PPGMPAGE pPage, RTGCPHYS GCPhys, const void **ppv, PPGMPAGEMAPLOCK pLock)
1532 pLock->pvPage = pv;
1533 pLock->pVCpu = pVCpu;
1540 pgmPhysPageMapLockForReading(pVM, pPage, pTlbe, pLock);
1567 * @param pLock Where to store the lock information that
1580 VMMDECL(int) PGMPhysGCPhys2CCPtr(PVM pVM, RTGCPHYS GCPhys, void **ppv, PPGMPAGEMAPLOCK pLock)
1611 pLock->pvPage = pv;
1612 pLock->pVCpu = pVCpu;
1644 pgmPhysPageMapLockForWriting(pVM, pPage, pTlbe, pLock);
1671 * @param pLock Where to store the lock information that
1683 VMMDECL(int) PGMPhysGCPhys2CCPtrReadOnly(PVM pVM, RTGCPHYS GCPhys, void const **ppv, PPGMPAGEMAPLOCK pLock)
1712 pLock->pvPage = pv;
1713 pLock->pVCpu = pVCpu;
1735 pgmPhysPageMapLockForReading(pVM, pPage, pTlbe, pLock);
1767 * @param pLock Where to store the lock information that PGMPhysReleasePageMappingLock needs.
1773 VMMDECL(int) PGMPhysGCPtr2CCPtr(PVMCPU pVCpu, RTGCPTR GCPtr, void **ppv, PPGMPAGEMAPLOCK pLock)
1779 rc = PGMPhysGCPhys2CCPtr(pVCpu->CTX_SUFF(pVM), GCPhys, ppv, pLock);
1801 * @param pLock Where to store the lock information that PGMPhysReleasePageMappingLock needs.
1807 VMMDECL(int) PGMPhysGCPtr2CCPtrReadOnly(PVMCPU pVCpu, RTGCPTR GCPtr, void const **ppv, PPGMPAGEMAPLOCK pLock)
1813 rc = PGMPhysGCPhys2CCPtrReadOnly(pVCpu->CTX_SUFF(pVM), GCPhys, ppv, pLock);
1825 * @param pLock The lock structure initialized by the mapping function.
1827 VMMDECL(void) PGMPhysReleasePageMappingLock(PVM pVM, PPGMPAGEMAPLOCK pLock)
1830 Assert(pLock->pvPage != NULL);
1831 Assert(pLock->pVCpu == VMMGetCpu(pVM));
1832 PGM_DYNMAP_UNUSED_HINT(pLock->pVCpu, pLock->pvPage);
1833 pLock->pVCpu = NULL;
1834 pLock->pvPage = NULL;
1837 PPGMPAGEMAP pMap = (PPGMPAGEMAP)pLock->pvMap;
1838 PPGMPAGE pPage = (PPGMPAGE)(pLock->uPageAndType & ~PGMPAGEMAPLOCK_TYPE_MASK);
1839 bool fWriteLock = (pLock->uPageAndType & PGMPAGEMAPLOCK_TYPE_MASK) == PGMPAGEMAPLOCK_TYPE_WRITE;
1841 pLock->uPageAndType = 0;
1842 pLock->pvMap = NULL;
1900 * @param pLock The lock structure initialized by the mapping function.
1904 void pgmPhysReleaseInternalPageMappingLock(PVM pVM, PPGMPAGEMAPLOCK pLock)
1907 PGMPhysReleasePageMappingLock(pVM, pLock); /* lazy for now */
4050 * @param pLock
4056 void **ppv, PPGMPAGEMAPLOCK pLock)
4116 pLock->pvPage = pv;
4117 pLock->pVCpu = pVCpu;
4127 pgmPhysPageMapLockForWriting(pVM, pPage, pTlbe, pLock);
4129 pgmPhysPageMapLockForReading(pVM, pPage, pTlbe, pLock);