Changeset 70301 in vbox for trunk/include/VBox/vmm
- Timestamp:
- Dec 22, 2017 6:06:27 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/hm_svm.h
r70266 r70301 445 445 /** @} */ 446 446 447 /** @name SVMVMCB.ctrl.u64IntShadow448 * @{449 */450 #define SVM_INTERRUPT_SHADOW_ACTIVE RT_BIT_64(0)451 /** @} */452 453 447 /** @name SVMINTCTRL.u3Type 454 448 * @{ … … 705 699 SVMINTCTRL IntCtrl; 706 700 /** Offset 0x68 - Interrupt shadow. */ 707 uint64_t u64IntShadow; 701 union 702 { 703 uint32_t u1IntShadow : 1; 704 uint32_t u1GuestIntMask : 1; 705 uint32_t u30Reserved0 : 30; 706 uint64_t u64IntShadowCtrl; 707 } RT_UNION_NM(intshadow); 708 708 /** Offset 0x70 - Exit code. */ 709 709 uint64_t u64ExitCode; … … 720 720 uint32_t u1Sev : 1; 721 721 uint32_t u1SevEs : 1; 722 uint32_t u2 8Reserved0 : 28;722 uint32_t u29Reserved0 : 29; 723 723 uint64_t u64NpSevCtrl; 724 724 } RT_UNION_NM(np); … … 736 736 uint32_t u1LbrVirt : 1; 737 737 uint32_t u1VirtVmsaveVmload : 1; 738 uint32_t u 29Reserved0 : 29;738 uint32_t u30Reserved1 : 30; 739 739 uint64_t u64LbrVirtCtrl; 740 740 } RT_UNION_NM(lbrvirt); … … 763 763 typedef const SVMVMCBCTRL *PCSVMVMCBCTRL; 764 764 AssertCompileSize(SVMVMCBCTRL, 0x100); 765 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptRdCRx, 0x00);766 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptWrCRx, 0x02);767 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptRdDRx, 0x04);768 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptWrDRx, 0x06);769 AssertCompileMemberOffset(SVMVMCBCTRL, u32InterceptXcpt, 0x08);770 AssertCompileMemberOffset(SVMVMCBCTRL, u64InterceptCtrl, 0x0c);771 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved, 0x14);772 AssertCompileMemberOffset(SVMVMCBCTRL, u16PauseFilterThreshold, 0x3c);773 AssertCompileMemberOffset(SVMVMCBCTRL, u16PauseFilterCount, 0x3e);774 AssertCompileMemberOffset(SVMVMCBCTRL, u64IOPMPhysAddr, 0x40);775 AssertCompileMemberOffset(SVMVMCBCTRL, u64MSRPMPhysAddr, 0x48);776 AssertCompileMemberOffset(SVMVMCBCTRL, u64TSCOffset, 0x50);777 AssertCompileMemberOffset(SVMVMCBCTRL, TLBCtrl, 0x58);778 AssertCompileMemberOffset(SVMVMCBCTRL, IntCtrl, 0x60);779 AssertCompileMemberOffset(SVMVMCBCTRL, u64IntShadow,0x68);780 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitCode, 0x70);781 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitInfo1, 0x78);782 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitInfo2, 0x80);783 AssertCompileMemberOffset(SVMVMCBCTRL, ExitIntInfo, 0x88);784 AssertCompileMemberOffset(SVMVMCBCTRL, RT_UNION_NM(np.) u64NpSevCtrl, 0x90);785 AssertCompileMemberOffset(SVMVMCBCTRL, AvicBar, 0x98);786 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved2, 0xa0);787 AssertCompileMemberOffset(SVMVMCBCTRL, EventInject, 0xa8);788 AssertCompileMemberOffset(SVMVMCBCTRL, u64NestedPagingCR3, 0xb0);789 AssertCompileMemberOffset(SVMVMCBCTRL, RT_UNION_NM(lbrvirt.) u64LbrVirtCtrl, 0xb8);790 AssertCompileMemberOffset(SVMVMCBCTRL, u32VmcbCleanBits, 0xc0);791 AssertCompileMemberOffset(SVMVMCBCTRL, u64NextRIP, 0xc8);792 AssertCompileMemberOffset(SVMVMCBCTRL, cbInstrFetched, 0xd0);793 AssertCompileMemberOffset(SVMVMCBCTRL, abInstr, 0xd1);794 AssertCompileMemberOffset(SVMVMCBCTRL, AvicBackingPagePtr, 0xe0);795 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved3, 0xe8);796 AssertCompileMemberOffset(SVMVMCBCTRL, AvicLogicalTablePtr, 0xf0);797 AssertCompileMemberOffset(SVMVMCBCTRL, AvicPhysicalTablePtr, 0xf8);765 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptRdCRx, 0x00); 766 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptWrCRx, 0x02); 767 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptRdDRx, 0x04); 768 AssertCompileMemberOffset(SVMVMCBCTRL, u16InterceptWrDRx, 0x06); 769 AssertCompileMemberOffset(SVMVMCBCTRL, u32InterceptXcpt, 0x08); 770 AssertCompileMemberOffset(SVMVMCBCTRL, u64InterceptCtrl, 0x0c); 771 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved, 0x14); 772 AssertCompileMemberOffset(SVMVMCBCTRL, u16PauseFilterThreshold, 0x3c); 773 AssertCompileMemberOffset(SVMVMCBCTRL, u16PauseFilterCount, 0x3e); 774 AssertCompileMemberOffset(SVMVMCBCTRL, u64IOPMPhysAddr, 0x40); 775 AssertCompileMemberOffset(SVMVMCBCTRL, u64MSRPMPhysAddr, 0x48); 776 AssertCompileMemberOffset(SVMVMCBCTRL, u64TSCOffset, 0x50); 777 AssertCompileMemberOffset(SVMVMCBCTRL, TLBCtrl, 0x58); 778 AssertCompileMemberOffset(SVMVMCBCTRL, IntCtrl, 0x60); 779 AssertCompileMemberOffset(SVMVMCBCTRL, RT_UNION_NM(intshadow.) u64IntShadowCtrl, 0x68); 780 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitCode, 0x70); 781 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitInfo1, 0x78); 782 AssertCompileMemberOffset(SVMVMCBCTRL, u64ExitInfo2, 0x80); 783 AssertCompileMemberOffset(SVMVMCBCTRL, ExitIntInfo, 0x88); 784 AssertCompileMemberOffset(SVMVMCBCTRL, RT_UNION_NM(np.) u64NpSevCtrl, 0x90); 785 AssertCompileMemberOffset(SVMVMCBCTRL, AvicBar, 0x98); 786 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved2, 0xa0); 787 AssertCompileMemberOffset(SVMVMCBCTRL, EventInject, 0xa8); 788 AssertCompileMemberOffset(SVMVMCBCTRL, u64NestedPagingCR3, 0xb0); 789 AssertCompileMemberOffset(SVMVMCBCTRL, RT_UNION_NM(lbrvirt.) u64LbrVirtCtrl, 0xb8); 790 AssertCompileMemberOffset(SVMVMCBCTRL, u32VmcbCleanBits, 0xc0); 791 AssertCompileMemberOffset(SVMVMCBCTRL, u64NextRIP, 0xc8); 792 AssertCompileMemberOffset(SVMVMCBCTRL, cbInstrFetched, 0xd0); 793 AssertCompileMemberOffset(SVMVMCBCTRL, abInstr, 0xd1); 794 AssertCompileMemberOffset(SVMVMCBCTRL, AvicBackingPagePtr, 0xe0); 795 AssertCompileMemberOffset(SVMVMCBCTRL, u8Reserved3, 0xe8); 796 AssertCompileMemberOffset(SVMVMCBCTRL, AvicLogicalTablePtr, 0xf0); 797 AssertCompileMemberOffset(SVMVMCBCTRL, AvicPhysicalTablePtr, 0xf8); 798 798 799 799 /**
Note:
See TracChangeset
for help on using the changeset viewer.