- Timestamp:
- Jul 4, 2016 1:35:42 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/IEMInternal.h
r61993 r61994 292 292 * - Bit 3 - pgm phys/virt - not directly writable. 293 293 * - Bit 4 - pgm phys page - not directly readable. 294 * - Bit 5 - tlb entry - HCPhys member not valid.294 * - Bit 5 - currently unused. 295 295 * - Bit 6 - page tables - not dirty (complemented X86_PTE_D). 296 296 * - Bit 7 - tlb entry - pMappingR3 member not valid. … … 306 306 */ 307 307 uint64_t fFlagsAndPhysRev; 308 /** The host physical page address (for raw-mode and maybe ring-0). */ 309 RTHCPHYS HCPhys; 310 /** Pointer to the ring-3 mapping. */ 308 /** The guest physical page address. */ 309 uint64_t GCPhys; 310 /** Pointer to the ring-3 mapping (possibly also valid in ring-0). */ 311 #ifdef VBOX_WITH_2X_4GB_ADDR_SPACE 311 312 R3PTRTYPE(uint8_t *) pMappingR3; 313 #else 314 R3R0PTRTYPE(uint8_t *) pMappingR3; 315 #endif 312 316 #if HC_ARCH_BITS == 32 313 317 uint32_t u32Padding1; … … 337 341 uint64_t uTlbRevision; 338 342 /** The TLB physical address revision - shadow of PGM variable. 343 * 339 344 * This is actually only 56 bits wide (see IEMTLBENTRY::fFlagsAndPhysRev) and is 340 345 * incremented by adding RT_BIT_64(8). When it wraps around and becomes zero, 341 * a rendezvous is called and each CPU wipe the IEMTLBENTRY::pMappingR3 ,342 * IEMTLBENTRY::HCPhys and bits 3, 4 and 8-63 in IEMTLBENTRY::fFlagsAndPhysRev.346 * a rendezvous is called and each CPU wipe the IEMTLBENTRY::pMappingR3 as well 347 * as IEMTLBENTRY::fFlagsAndPhysRev bits 63 thru 8, 4, and 3. 343 348 * 344 349 * The initial value is choosen to cause an early wraparound. */ … … 361 366 /** TLB misses because of write access handlers. */ 362 367 uint32_t cTlbMissesWriteHandler; 368 /** TLB misses because no r3(/r0) mapping. */ 369 uint32_t cTlbMissesMapping; 363 370 /** Alignment padding. */ 364 uint32_t au32Padding[ 4];371 uint32_t au32Padding[3]; 365 372 } IEMTLB; 366 373 AssertCompileSizeAlignment(IEMTLB, 64);
Note:
See TracChangeset
for help on using the changeset viewer.