Changeset 108132 in vbox for trunk/src/VBox/VMM/include
- Timestamp:
- Feb 10, 2025 11:05:23 AM (3 months ago)
- svn:sync-xref-src-repo-rev:
- 167432
- Location:
- trunk/src/VBox/VMM/include
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/include/PDMInternal.h
r107308 r108132 48 48 #include <VBox/vmm/pdmcommon.h> 49 49 #include <VBox/vmm/pdmtask.h> 50 #ifdef VBOX_VMM_TARGET_ARMV8 50 #if defined(VBOX_VMM_TARGET_X86) || defined(VBOX_VMM_TARGET_AGNOSTIC) 51 # include <VBox/vmm/pdmapic.h> 52 #endif 53 #if defined(VBOX_VMM_TARGET_ARMV8) || defined(VBOX_VMM_TARGET_AGNOSTIC) 51 54 # include <VBox/vmm/pdmgic.h> 52 #else53 # include <VBox/vmm/pdmapic.h>54 55 #endif 55 56 #include <VBox/sup.h> … … 1828 1829 # define PDM_TO_APICBACKEND(a_pVM) (&((a_pVM)->pdm.s.Ic.u.x86.ApicBackend)) 1829 1830 # define PDMCPU_TO_APICBACKEND(a_pVCpu) (&((a_pVCpu)->CTX_SUFF(pVM)->pdm.s.Ic.u.x86.ApicBackend)) 1830 # else1831 # else 1831 1832 # define PDM_TO_APICBACKEND(a_pVM) (&((a_pVM)->pdmr0.s.Ic.u.x86.ApicBackend)) 1832 1833 # define PDMCPU_TO_APICBACKEND(a_pVCpu) (&((a_pVCpu)->CTX_SUFF(pVM)->pdmr0.s.Ic.u.x86.ApicBackend)) 1833 # endif1834 # endif 1834 1835 #else 1835 1836 # ifdef IN_RING3 1836 1837 # define PDM_TO_GICBACKEND(a_pVM) (&((a_pVM)->pdm.s.Ic.u.armv8.GicBackend)) 1837 1838 # define PDMCPU_TO_GICBACKEND(a_pVCpu) (&((a_pVCpu)->CTX_SUFF(pVM)->pdm.s.Ic.u.armv8.GicBackend)) 1838 #else 1839 # error "Implement me" 1840 #endif 1839 # else 1840 # ifndef VBOX_WITH_MINIMAL_R0 /* hack for AllPdbTypeHack.cpp */ 1841 # error "Implement me" 1842 # endif 1843 # endif 1841 1844 #endif 1842 1845 -
trunk/src/VBox/VMM/include/PGMInline.h
r107171 r108132 1162 1162 } 1163 1163 1164 #ifndef VBOX_WITH_ONLY_PGM_NEM_MODE 1164 1165 1165 1166 /** … … 1190 1191 * Just deal with the simple case here. 1191 1192 */ 1192 # ifdef VBOX_STRICT1193 # ifdef VBOX_STRICT 1193 1194 PVMCC pVM = pPool->CTX_SUFF(pVM); NOREF(pVM); 1194 # endif1195 # ifdef LOG_ENABLED1195 # endif 1196 # ifdef LOG_ENABLED 1196 1197 const unsigned uOrg = PGM_PAGE_GET_TRACKING(pPhysPage); 1197 # endif1198 # endif 1198 1199 const unsigned cRefs = PGM_PAGE_GET_TD_CREFS(pPhysPage); 1199 1200 if (cRefs == 1) 1200 1201 { 1201 # if 0 /* for more debug info */1202 # if 0 /* for more debug info */ 1202 1203 AssertMsg( pPoolPage->idx == PGM_PAGE_GET_TD_IDX(pPhysPage) 1203 1204 && iPte == PGM_PAGE_GET_PTE_INDEX(pPhysPage), … … 1207 1208 pPool->aPages[PGM_PAGE_GET_TD_IDX(pPhysPage)].enmKind, 1208 1209 ((uint64_t *)pPoolPage->CTX_SUFF(pvPage))[iPte])); 1209 # else1210 # else 1210 1211 Assert(pPoolPage->idx == PGM_PAGE_GET_TD_IDX(pPhysPage)); 1211 1212 Assert(iPte == PGM_PAGE_GET_PTE_INDEX(pPhysPage)); 1212 # endif1213 # endif 1213 1214 /* Invalidate the tracking data. */ 1214 1215 PGM_PAGE_SET_TRACKING(pVM, pPhysPage, 0); … … 1316 1317 } 1317 1318 1319 #endif /* !VBOX_WITH_ONLY_PGM_NEM_MODE */ 1318 1320 1319 1321 /** @} */ -
trunk/src/VBox/VMM/include/PGMInternal.h
r107194 r108132 76 76 * Optimization for PAE page tables that are modified often 77 77 */ 78 #if ndef VBOX_VMM_TARGET_ARMV878 #if !defined(VBOX_VMM_TARGET_ARMV8) && !defined(VBOX_WITH_ONLY_PGM_NEM_MODE) 79 79 # define PGMPOOL_WITH_OPTIMIZED_DIRTY_PT 80 80 #endif … … 2513 2513 /** @name A20 gate macros 2514 2514 * @{ */ 2515 #define PGM_WITH_A20 2515 #if defined(VBOX_VMM_TARGET_X86) || defined(DOXYGEN_RUNNING) 2516 # define PGM_WITH_A20 2517 #elif !defined(VBOX_VMM_TARGET_ARMV8) && !defined(IN_TSTVMSTRUCT) 2518 # error "Misconfig" 2519 #endif 2516 2520 #ifdef PGM_WITH_A20 2517 2521 # define PGM_A20_IS_ENABLED(a_pVCpu) ((a_pVCpu)->pgm.s.fA20Enabled) … … 4000 4004 void pgmR3PhysAssertSharedPageChecksums(PVM pVM); 4001 4005 4006 # ifndef VBOX_WITH_ONLY_PGM_NEM_MODE 4002 4007 int pgmR3PoolInit(PVM pVM); 4003 4008 void pgmR3PoolRelocate(PVM pVM); … … 4007 4012 DECLCALLBACK(VBOXSTRICTRC) pgmR3PoolClearAllRendezvous(PVM pVM, PVMCPU pVCpu, void *fpvFlushRemTbl); 4008 4013 void pgmR3PoolWriteProtectPages(PVM pVM); 4014 # endif 4009 4015 4010 4016 #endif /* IN_RING3 */ 4011 #ifdef IN_RING0 4017 #ifndef VBOX_WITH_ONLY_PGM_NEM_MODE 4018 # ifdef IN_RING0 4012 4019 int pgmR0PoolInitVM(PGVM pGVM); 4013 # endif4020 # endif 4014 4021 int pgmPoolAlloc(PVMCC pVM, RTGCPHYS GCPhys, PGMPOOLKIND enmKind, PGMPOOLACCESS enmAccess, bool fA20Enabled, 4015 4022 uint16_t iUser, uint32_t iUserTable, bool fLockPage, PPPGMPOOLPAGE ppPage); … … 4076 4083 int pgmR3ReEnterShadowModeAfterPoolFlush(PVM pVM, PVMCPU pVCpu); 4077 4084 void pgmR3RefreshShadowModeAfterA20Change(PVMCPU pVCpu); 4085 #endif /* !VBOX_WITH_ONLY_PGM_NEM_MODE */ 4078 4086 4079 4087 int pgmShwMakePageSupervisorAndWritable(PVMCPUCC pVCpu, RTGCPTR GCPtr, bool fBigPage, uint32_t fOpFlags);
Note:
See TracChangeset
for help on using the changeset viewer.