Changeset 16918 in vbox for trunk/src/VBox/VMM/PGMInternal.h
- Timestamp:
- Feb 18, 2009 3:58:38 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/PGMInternal.h
r16907 r16918 1635 1635 * It's a hack required because of REMR3NotifyHandlerPhysicalDeregister. */ 1636 1636 bool volatile fReusedFlushPending; 1637 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 1637 1638 /** Used to indicate that the guest is mapping the page is also used as a CR3. 1638 1639 * In these cases the access handler acts differently and will check … … 1642 1643 */ 1643 1644 bool fCR3Mix; 1645 #endif 1644 1646 } PGMPOOLPAGE, *PPGMPOOLPAGE, **PPPGMPOOLPAGE; 1645 1647 … … 2048 2050 DECLR3CALLBACKMEMBER(int, pfnR3GstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2049 2051 DECLR3CALLBACKMEMBER(int, pfnR3GstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2052 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2050 2053 DECLR3CALLBACKMEMBER(int, pfnR3GstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2051 2054 DECLR3CALLBACKMEMBER(int, pfnR3GstUnmonitorCR3,(PVM pVM)); 2055 #endif 2052 2056 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2053 2057 R3PTRTYPE(PFNPGMR3PHYSHANDLER) pfnR3GstWriteHandlerCR3; … … 2059 2063 DECLRCCALLBACKMEMBER(int, pfnRCGstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2060 2064 DECLRCCALLBACKMEMBER(int, pfnRCGstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2065 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2061 2066 DECLRCCALLBACKMEMBER(int, pfnRCGstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2062 2067 DECLRCCALLBACKMEMBER(int, pfnRCGstUnmonitorCR3,(PVM pVM)); 2068 #endif 2063 2069 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2064 2070 RCPTRTYPE(PFNPGMRCPHYSHANDLER) pfnRCGstWriteHandlerCR3; … … 2068 2074 DECLR0CALLBACKMEMBER(int, pfnR0GstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2069 2075 DECLR0CALLBACKMEMBER(int, pfnR0GstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2076 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2070 2077 DECLR0CALLBACKMEMBER(int, pfnR0GstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2071 2078 DECLR0CALLBACKMEMBER(int, pfnR0GstUnmonitorCR3,(PVM pVM)); 2079 #endif 2072 2080 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2073 2081 R0PTRTYPE(PFNPGMRCPHYSHANDLER) pfnR0GstWriteHandlerCR3; … … 2169 2177 uint32_t u32Alignment; 2170 2178 #endif 2179 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2171 2180 /** The physical address of the currently monitored guest CR3 page. 2172 2181 * When this value is NIL_RTGCPHYS no page is being monitored. */ 2173 2182 RTGCPHYS GCPhysGstCR3Monitored; 2183 #endif 2174 2184 /** @name 32-bit Guest Paging. 2175 2185 * @{ */ … … 2335 2345 DECLR3CALLBACKMEMBER(int, pfnR3GstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2336 2346 DECLR3CALLBACKMEMBER(int, pfnR3GstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2347 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2337 2348 DECLR3CALLBACKMEMBER(int, pfnR3GstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2338 2349 DECLR3CALLBACKMEMBER(int, pfnR3GstUnmonitorCR3,(PVM pVM)); 2350 #endif 2339 2351 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2340 2352 R3PTRTYPE(PFNPGMR3PHYSHANDLER) pfnR3GstWriteHandlerCR3; … … 2346 2358 DECLRCCALLBACKMEMBER(int, pfnRCGstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2347 2359 DECLRCCALLBACKMEMBER(int, pfnRCGstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2360 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2348 2361 DECLRCCALLBACKMEMBER(int, pfnRCGstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2349 2362 DECLRCCALLBACKMEMBER(int, pfnRCGstUnmonitorCR3,(PVM pVM)); 2363 #endif 2350 2364 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2351 2365 RCPTRTYPE(PFNPGMRCPHYSHANDLER) pfnRCGstWriteHandlerCR3; … … 2359 2373 DECLR0CALLBACKMEMBER(int, pfnR0GstModifyPage,(PVM pVM, RTGCPTR GCPtr, size_t cbPages, uint64_t fFlags, uint64_t fMask)); 2360 2374 DECLR0CALLBACKMEMBER(int, pfnR0GstGetPDE,(PVM pVM, RTGCPTR GCPtr, PX86PDEPAE pPde)); 2375 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2361 2376 DECLR0CALLBACKMEMBER(int, pfnR0GstMonitorCR3,(PVM pVM, RTGCPHYS GCPhysCR3)); 2362 2377 DECLR0CALLBACKMEMBER(int, pfnR0GstUnmonitorCR3,(PVM pVM)); 2378 #endif 2363 2379 #ifndef VBOX_WITH_PGMPOOL_PAGING_ONLY 2364 2380 R0PTRTYPE(PFNPGMRCPHYSHANDLER) pfnR0GstWriteHandlerCR3; … … 2961 2977 void pgmPoolMonitorModifiedInsert(PPGMPOOL pPool, PPGMPOOLPAGE pPage); 2962 2978 void pgmPoolMonitorModifiedClearAll(PVM pVM); 2963 # ifdef VBOX_WITH_PGMPOOL_PAGING_ONLY2964 int pgmPoolMonitorMonitorCR3(PPGMPOOL pPool, RTGCPHYS GCPhysCR3);2965 int pgmPoolMonitorUnmonitorCR3(PPGMPOOL pPool, RTGCPHYS GCPhysCR3);2966 # else2967 2979 int pgmPoolMonitorMonitorCR3(PPGMPOOL pPool, uint16_t idxRoot, RTGCPHYS GCPhysCR3); 2968 2980 int pgmPoolMonitorUnmonitorCR3(PPGMPOOL pPool, uint16_t idxRoot); 2969 # endif2970 2981 #endif 2971 2982
Note:
See TracChangeset
for help on using the changeset viewer.