Changeset 26277 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Feb 5, 2010 4:44:42 AM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 57336
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/PDMAllCritSect.cpp
r25685 r26277 71 71 #else 72 72 AssertMsgReturn(pCritSect->s.Core.u32Magic == RTCRITSECT_MAGIC, ("%RX32\n", pCritSect->s.Core.u32Magic), 73 VERR_SEM_DESTROYED);73 NIL_RTNATIVETHREAD); 74 74 PVM pVM = pCritSect->s.CTX_SUFF(pVM); AssertPtr(pVM); 75 75 PVMCPU pVCpu = VMMGetCpu(pVM); AssertPtr(pVCpu); -
trunk/src/VBox/VMM/VMMAll/PGMAll.cpp
r26202 r26277 2218 2218 PGMDynMapHCPage(pVM, HCPhys, ppv); 2219 2219 #endif 2220 *ppv = (void *)((uintptr_t)*ppv | ( GCPhys & PAGE_OFFSET_MASK));2220 *ppv = (void *)((uintptr_t)*ppv | (uintptr_t)(GCPhys & PAGE_OFFSET_MASK)); 2221 2221 return VINF_SUCCESS; 2222 2222 } -
trunk/src/VBox/VMM/VMMAll/PGMAllBth.h
r26271 r26277 701 701 PGMGstGetPage(pVCpu, pvFault, &fPageGst2, &GCPhys2); 702 702 Log(("Page out of sync: %RGv eip=%08x PdeSrc.n.u1User=%d fPageGst2=%08llx GCPhys2=%RGp scan=%d\n", 703 pvFault, pRegFrame->eip, PdeSrc.n.u1User, fPageGst2, GCPhys2, CSAMDoesPageNeedScanning(pVM, (RTRCPTR)pRegFrame->eip)));703 pvFault, pRegFrame->eip, PdeSrc.n.u1User, fPageGst2, GCPhys2, CSAMDoesPageNeedScanning(pVM, pRegFrame->eip))); 704 704 # endif /* LOG_ENABLED */ 705 705 … … 717 717 # ifdef CSAM_DETECT_NEW_CODE_PAGES 718 718 || ( !PATMIsPatchGCAddr(pVM, pRegFrame->eip) 719 && CSAMDoesPageNeedScanning(pVM, (RTRCPTR)pRegFrame->eip)) /* any new code we encounter here */719 && CSAMDoesPageNeedScanning(pVM, pRegFrame->eip)) /* any new code we encounter here */ 720 720 # endif /* CSAM_DETECT_NEW_CODE_PAGES */ 721 721 ) … … 776 776 /** @todo not correct for pages that contain both code and data!! */ 777 777 Log2(("CSAMMarkPage %RGv; scanned=%d\n", pvFault, true)); 778 CSAMMarkPage(pVM, (RTRCPTR)pvFault, true);778 CSAMMarkPage(pVM, pvFault, true); 779 779 } 780 780 } … … 1728 1728 if ( ((PdeSrc.u & PteSrc.u) & (X86_PTE_RW | X86_PTE_US)) 1729 1729 || iPTDst == ((GCPtrPage >> SHW_PT_SHIFT) & SHW_PT_MASK) /* always sync GCPtrPage */ 1730 || !CSAMDoesPageNeedScanning(pVM, (RTRCPTR)GCPtrCurPage)1730 || !CSAMDoesPageNeedScanning(pVM, GCPtrCurPage) 1731 1731 || ( (pPage = pgmPhysGetPage(&pVM->pgm.s, PteSrc.u & GST_PTE_PG_MASK)) 1732 1732 && PGM_PAGE_HAS_ACTIVE_HANDLERS(pPage)) … … 2688 2688 PPGMPAGE pPage; 2689 2689 if ( ((PdeSrc.u & pPTSrc->a[iPTSrc].u) & (X86_PTE_RW | X86_PTE_US)) 2690 || !CSAMDoesPageNeedScanning(pVM, ( RTRCPTR)((iPDSrc << GST_PD_SHIFT) | (iPTSrc << PAGE_SHIFT)))2690 || !CSAMDoesPageNeedScanning(pVM, (iPDSrc << GST_PD_SHIFT) | (iPTSrc << PAGE_SHIFT)) 2691 2691 || ( (pPage = pgmPhysGetPage(&pVM->pgm.s, PteSrc.u & GST_PTE_PG_MASK)) 2692 2692 && PGM_PAGE_HAS_ACTIVE_HANDLERS(pPage)) … … 2809 2809 */ 2810 2810 else if ( !PdeSrc.n.u1User 2811 && CSAMDoesPageNeedScanning(pVM, (RTRCPTR)(GCPtr | (iPTDst << SHW_PT_SHIFT))))2811 && CSAMDoesPageNeedScanning(pVM, GCPtr | (iPTDst << SHW_PT_SHIFT))) 2812 2812 PteDst.u = 0; 2813 2813 # endif … … 3148 3148 /** @todo not correct for pages that contain both code and data!! */ 3149 3149 Log(("CSAMMarkPage %RGv; scanned=%d\n", GCPtrPage, true)); 3150 CSAMMarkPage(pVM, (RTRCPTR)GCPtrPage, true);3150 CSAMMarkPage(pVM, GCPtrPage, true); 3151 3151 } 3152 3152 # endif … … 4239 4239 pVCpu->pgm.s.pGstPaePdptR0 = (R0PTRTYPE(PX86PDPT))HCPtrGuestCR3; 4240 4240 # endif 4241 pVCpu->pgm.s.pGstPaePdptRC = (RCPTRTYPE(PX86PDPT))((R CPTRTYPE(uint8_t *))pVM->pgm.s.GCPtrCR3Mapping + off);4241 pVCpu->pgm.s.pGstPaePdptRC = (RCPTRTYPE(PX86PDPT))((RTRCUINTPTR)pVM->pgm.s.GCPtrCR3Mapping + off); 4242 4242 Log(("Cached mapping %RRv\n", pVCpu->pgm.s.pGstPaePdptRC)); 4243 4243 … … 4274 4274 pVCpu->pgm.s.apGstPaePDsR0[i] = (R0PTRTYPE(PX86PDPAE))HCPtr; 4275 4275 # endif 4276 pVCpu->pgm.s.apGstPaePDsRC[i] = (RCPTRTYPE(PX86PDPAE)) GCPtr;4276 pVCpu->pgm.s.apGstPaePDsRC[i] = (RCPTRTYPE(PX86PDPAE))(RTRCUINTPTR)GCPtr; 4277 4277 pVCpu->pgm.s.aGCPhysGstPaePDs[i] = GCPhys; 4278 4278 # ifdef IN_RC
Note:
See TracChangeset
for help on using the changeset viewer.