Changeset 91301 in vbox for trunk/include/VBox/vmm
- Timestamp:
- Sep 17, 2021 1:38:24 PM (3 years ago)
- Location:
- trunk/include/VBox/vmm
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/cpum.mac
r91299 r91301 268 268 .hwvirt.svm resb 0 269 269 .hwvirt.vmx resb 0 270 .hwvirt.svm.Vmcb resb 4096 271 .hwvirt.svm.abMsrBitmap resb 8192 272 .hwvirt.svm.abIoBitmap resb 12288 273 .hwvirt.svm.uMsrHSavePa resq 1 274 .hwvirt.svm.GCPhysVmcb resq 1 275 alignb 8 276 .hwvirt.svm.HostState resb 184 277 .hwvirt.svm.uPrevPauseTick resq 1 278 .hwvirt.svm.cPauseFilter resw 1 279 .hwvirt.svm.cPauseFilterThreshold resw 1 280 .hwvirt.svm.fInterceptEvents resb 1 281 ;.unnamed_padding.1 resb 0 282 283 .hwvirt.vmx.Vmcs EQU (.hwvirt.vmx ) 284 .hwvirt.vmx.ShadowVmcs EQU (.hwvirt.vmx + 0x1000) 270 271 .hwvirt.svm.Vmcb EQU .hwvirt.svm 272 .hwvirt.svm.abMsrBitmap EQU (.hwvirt.svm.Vmcb + 0x1000) 273 .hwvirt.svm.abIoBitmap EQU (.hwvirt.svm.abMsrBitmap + 0x2000) 274 .hwvirt.svm.uMsrHSavePa EQU (.hwvirt.svm.abIoBitmap + 0x3000) ; resq 1 275 .hwvirt.svm.GCPhysVmcb EQU (.hwvirt.svm.uMsrHSavePa + 8) ; resq 1 276 alignb 8 277 .hwvirt.svm.HostState EQU (.hwvirt.svm.GCPhysVmcb + 8) ; resb 184 278 .hwvirt.svm.uPrevPauseTick EQU (.hwvirt.svm.HostState + 184) ; resq 1 279 .hwvirt.svm.cPauseFilter EQU (.hwvirt.svm.uPrevPauseTick + 8) ; resw 1 280 .hwvirt.svm.cPauseFilterThreshold EQU (.hwvirt.svm.cPauseFilter + 2) ; resw 1 281 .hwvirt.svm.fInterceptEvents EQU (.hwvirt.svm.cPauseFilterThreshold + 2) ; resb 1 282 283 .hwvirt.vmx.Vmcs resb 0x1000 284 .hwvirt.vmx.ShadowVmcs resb 0x1000 285 .hwvirt.vmx.abVmreadBitmap resb 0x1000 286 .hwvirt.vmx.abVmwriteBitmap resb 0x1000 287 .hwvirt.vmx.aEntryMsrLoadArea resb 0x2000 288 .hwvirt.vmx.aExitMsrStoreArea resb 0x2000 289 .hwvirt.vmx.aExitMsrLoadArea resb 0x2000 290 alignb 8 291 .hwvirt.vmx.GCPhysVmxon resq 1 292 .hwvirt.vmx.GCPhysVmcs resq 1 293 .hwvirt.vmx.GCPhysShadowVmcs resq 1 294 .hwvirt.vmx.enmDiag resd 1 295 .hwvirt.vmx.enmAbort resd 1 296 .hwvirt.vmx.uDiagAux resq 1 297 .hwvirt.vmx.uAbortAux resd 1 298 .hwvirt.vmx.fInVmxRootMode resb 1 299 .hwvirt.vmx.fInVmxNonRootMode resb 1 300 .hwvirt.vmx.fInterceptEvents resb 1 301 .hwvirt.vmx.fNmiUnblockingIret resb 1 302 .hwvirt.vmx.pvVirtApicPageR0 resq 1 303 .hwvirt.vmx.pvVirtApicPageR3 resq 1 304 .hwvirt.vmx.pvMsrBitmapR0 resq 1 305 .hwvirt.vmx.pvMsrBitmapR3 resq 1 306 .hwvirt.vmx.pvIoBitmapR0 resq 1 307 .hwvirt.vmx.pvIoBitmapR3 resq 1 308 .hwvirt.vmx.uFirstPauseLoopTick resq 1 309 .hwvirt.vmx.uPrevPauseTick resq 1 310 .hwvirt.vmx.uEntryTick resq 1 311 .hwvirt.vmx.offVirtApicWrite resw 1 312 .hwvirt.vmx.fVirtNmiBlocking resb 1 313 alignb 8 314 .hwvirt.vmx.Msrs resb 224 315 .hwvirt.vmx.HCPhysVirtApicPage resq 1 285 316 286 317 alignb 8 -
trunk/include/VBox/vmm/cpumctx.h
r91298 r91301 543 543 /** 0X5000 - The shadow VMCS. */ 544 544 VMXVVMCS ShadowVmcs; 545 /** 0x6000 - The VMREAD bitmap. */ 546 uint8_t abVmreadBitmap[VMX_V_VMREAD_VMWRITE_BITMAP_SIZE]; 547 /** 0x7000 - The VMWRITE bitmap. */ 548 uint8_t abVmwriteBitmap[VMX_V_VMREAD_VMWRITE_BITMAP_SIZE]; 549 /** 0x8000 - The VM-entry MSR-load area. */ 550 VMXAUTOMSR aEntryMsrLoadArea[VMX_V_AUTOMSR_AREA_SIZE / sizeof(VMXAUTOMSR)]; 551 /** 0xa000 - The VM-exit MSR-store area. */ 552 VMXAUTOMSR aExitMsrStoreArea[VMX_V_AUTOMSR_AREA_SIZE / sizeof(VMXAUTOMSR)]; 553 /** 0xc000 - The VM-exit MSR-load area. */ 554 VMXAUTOMSR aExitMsrLoadArea[VMX_V_AUTOMSR_AREA_SIZE / sizeof(VMXAUTOMSR)]; 545 555 546 556 /** 0x300 - Guest physical address of the VMXON region. */ … … 572 582 /** 0x358 - The virtual-APIC page - R3 ptr. */ 573 583 R3PTRTYPE(void *) pvVirtApicPageR3; 574 /** 0x360 - The VMREAD bitmap - R0 ptr. */575 R0PTRTYPE(void *) pvVmreadBitmapR0;576 /** 0x368 - The VMREAD bitmap - R3 ptr. */577 R3PTRTYPE(void *) pvVmreadBitmapR3;578 /** 0x370 - The VMWRITE bitmap - R0 ptr. */579 R0PTRTYPE(void *) pvVmwriteBitmapR0;580 /** 0x378 - The VMWRITE bitmap - R3 ptr. */581 R3PTRTYPE(void *) pvVmwriteBitmapR3;582 /** 0x380 - The VM-entry MSR-load area - R0 ptr. */583 R0PTRTYPE(PVMXAUTOMSR) pEntryMsrLoadAreaR0;584 /** 0x388 - The VM-entry MSR-load area - R3 ptr. */585 R3PTRTYPE(PVMXAUTOMSR) pEntryMsrLoadAreaR3;586 /** 0x390 - The VM-exit MSR-store area - R0 ptr. */587 R0PTRTYPE(PVMXAUTOMSR) pExitMsrStoreAreaR0;588 /** 0x398 - The VM-exit MSR-store area - R3 ptr. */589 R3PTRTYPE(PVMXAUTOMSR) pExitMsrStoreAreaR3;590 /** 0x3a0 - The VM-exit MSR-load area - R0 ptr. */591 R0PTRTYPE(PVMXAUTOMSR) pExitMsrLoadAreaR0;592 /** 0x3a8 - The VM-exit MSR-load area - R3 ptr. */593 R3PTRTYPE(PVMXAUTOMSR) pExitMsrLoadAreaR3;594 584 /** 0x3b0 - MSR bitmap - R0 ptr. */ 595 585 R0PTRTYPE(void *) pvMsrBitmapR0; … … 634 624 #endif 635 625 /** 0x530 - Pad to 64 byte boundary. */ 636 uint8_t abPadding0[8 +16];626 uint8_t abPadding0[8]; 637 627 } hwvirt; 638 628 } CPUMCTX; … … 845 835 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.Vmcs, X86_PAGE_SIZE); 846 836 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.ShadowVmcs, X86_PAGE_SIZE); 847 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx. pvVmreadBitmapR0, 8);848 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx. pvVmwriteBitmapR0, 8);849 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx. pEntryMsrLoadAreaR0, 8);850 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx. pExitMsrStoreAreaR0, 8);851 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx. pExitMsrLoadAreaR0, 8);837 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.abVmreadBitmap, X86_PAGE_SIZE); 838 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.abVmwriteBitmap, X86_PAGE_SIZE); 839 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.aEntryMsrLoadArea, X86_PAGE_SIZE); 840 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.aExitMsrStoreArea, X86_PAGE_SIZE); 841 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.aExitMsrLoadArea, X86_PAGE_SIZE); 852 842 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pvMsrBitmapR0, 8); 853 843 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pvIoBitmapR0, 8); -
trunk/include/VBox/vmm/vm.h
r91291 r91301 305 305 CPUMCTX GstCtx; 306 306 #endif 307 uint8_t padding[ 61440]; /* multiple of 4096 */307 uint8_t padding[86016]; /* multiple of 4096 */ 308 308 } cpum; 309 309 -
trunk/include/VBox/vmm/vm.mac
r91291 r91301 91 91 .pgm resb 4096+28672 92 92 alignb 4096 93 .cpum resb 6144093 .cpum resb 86016 94 94 %define VMCPU.cpum.GstCtx VMCPU.cpum 95 95 alignb 4096
Note:
See TracChangeset
for help on using the changeset viewer.