Changeset 92391 in vbox for trunk/src/VBox/VMM/VMMR0
- Timestamp:
- Nov 12, 2021 9:47:48 AM (3 years ago)
- svn:sync-xref-src-repo-rev:
- 148245
- Location:
- trunk/src/VBox/VMM/VMMR0
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/GMMR0.cpp
r92368 r92391 2942 2942 2943 2943 /* 2944 * Validate , get basics and take the semaphore.2944 * Validate & get basics. 2945 2945 * (This is a relatively busy path, so make predictions where possible.) 2946 2946 */ … … 2983 2983 } 2984 2984 2985 gmmR0MutexAcquire(pGMM); 2986 if (GMM_CHECK_SANITY_UPON_ENTERING(pGMM)) 2985 /* 2986 * Take the semaphore 2987 */ 2988 VMMR0EMTBLOCKCTX Ctx; 2989 PGVMCPU pGVCpu = &pGVM->aCpus[idCpu]; 2990 rc = VMMR0EmtPrepareToBlock(pGVCpu, VINF_SUCCESS, "GMMR0AllocateHandyPages", pGMM, &Ctx); 2991 AssertRCReturn(rc, rc); 2992 2993 rc = gmmR0MutexAcquire(pGMM); 2994 if ( RT_SUCCESS(rc) 2995 && GMM_CHECK_SANITY_UPON_ENTERING(pGMM)) 2987 2996 { 2988 2997 /* No allocations before the initial reservation has been made! */ … … 3105 3114 rc = VERR_WRONG_ORDER; 3106 3115 GMM_CHECK_SANITY_UPON_LEAVING(pGMM); 3107 } 3108 else 3116 gmmR0MutexRelease(pGMM); 3117 } 3118 else if (RT_SUCCESS(rc)) 3119 { 3120 gmmR0MutexRelease(pGMM); 3109 3121 rc = VERR_GMM_IS_NOT_SANE; 3110 gmmR0MutexRelease(pGMM); 3122 } 3123 VMMR0EmtResumeAfterBlocking(pGVCpu, &Ctx); 3124 3111 3125 LogFlow(("GMMR0AllocateHandyPages: returns %Rrc\n", rc)); 3112 3126 return rc; -
trunk/src/VBox/VMM/VMMR0/VMMR0.cpp
r92368 r92391 1294 1294 switch (pVCpu->vmm.s.enmCallRing3Operation) 1295 1295 { 1296 case VMMCALLRING3_PGM_ALLOCATE_HANDY_PAGES:1297 STAM_COUNTER_INC(&pVM->vmm.s.StatRZCallPGMAllocHandy);1298 break;1299 1296 case VMMCALLRING3_VM_R0_ASSERTION: 1300 1297 default:
Note:
See TracChangeset
for help on using the changeset viewer.