Changeset 97040 in vbox
- Timestamp:
- Oct 7, 2022 8:48:02 AM (2 years ago)
- svn:sync-xref-src-repo-rev:
- 153986
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/hm_vmx.h
r97019 r97040 3853 3853 { (a_uReason), (a_cbInstr), { 0 }, VMXINSTRID_NONE, 0, 0, 0, 0, 0 } 3854 3854 3855 /** Initialize a VMXVEXITINFO structure from exit reason and exit qualifi er. */3856 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER(a_uReason, a_uQualifier) \3857 { (a_uReason), 0, { 0 }, VMXINSTRID_NONE, (a_uQual ifier), 0, 0, 0, 0 }3858 3859 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3855 /** Initialize a VMXVEXITINFO structure from exit reason and exit qualification. */ 3856 #define VMXVEXITINFO_INIT_WITH_QUAL(a_uReason, a_uQual) \ 3857 { (a_uReason), 0, { 0 }, VMXINSTRID_NONE, (a_uQual), 0, 0, 0, 0 } 3858 3859 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3860 3860 * instruction info and length. */ 3861 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO(a_uReason, a_uQualifier, a_uInstrInfo, a_cbInstr) \3862 { (a_uReason), (a_cbInstr), { a_uInstrInfo }, VMXINSTRID_NONE, (a_uQual ifier), 0, 0, 0, 0 }3863 3864 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3861 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO(a_uReason, a_uQual, a_uInstrInfo, a_cbInstr) \ 3862 { (a_uReason), (a_cbInstr), { a_uInstrInfo }, VMXINSTRID_NONE, (a_uQual), 0, 0, 0, 0 } 3863 3864 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3865 3865 * instruction info and length all copied from a VMXTRANSIENT structure. */ 3866 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO_FROM_TRANSIENT(a_pVmxTransient) \3867 VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO((a_pVmxTransient)->uExitReason, \3868 3869 3870 3871 3872 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3866 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO_FROM_TRANSIENT(a_pVmxTransient) \ 3867 VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO((a_pVmxTransient)->uExitReason, \ 3868 (a_pVmxTransient)->uExitQual, \ 3869 (a_pVmxTransient)->ExitInstrInfo.u, \ 3870 (a_pVmxTransient)->cbExitInstr) 3871 3872 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3873 3873 * instruction length (no info). */ 3874 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_LEN(a_uReason, a_uQualifier, a_cbInstr) \3875 { (a_uReason), (a_cbInstr), { 0 }, VMXINSTRID_NONE, (a_uQual ifier), 0, 0, 0, 0 }3876 3877 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi erand3874 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_LEN(a_uReason, a_uQual, a_cbInstr) \ 3875 { (a_uReason), (a_cbInstr), { 0 }, VMXINSTRID_NONE, (a_uQual), 0, 0, 0, 0 } 3876 3877 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification and 3878 3878 * instruction length (no info) all copied from a VMXTRANSIENT structure. */ 3879 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_LEN_FROM_TRANSIENT(a_pVmxTransient) \3880 VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_LEN((a_pVmxTransient)->uExitReason, \3881 3882 3883 3884 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3879 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_LEN_FROM_TRANSIENT(a_pVmxTransient) \ 3880 VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_LEN((a_pVmxTransient)->uExitReason, \ 3881 (a_pVmxTransient)->uExitQual, \ 3882 (a_pVmxTransient)->cbExitInstr) 3883 3884 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3885 3885 * instruction info, instruction length and guest linear address. */ 3886 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO_AND_LIN_ADDR(a_uReason, a_uQualifier, a_uInstrInfo, \3887 3888 { (a_uReason), (a_cbInstr), { (a_uInstrInfo) }, VMXINSTRID_NONE, (a_uQual ifier), (a_uGstLinAddr), 0, 0, 0 }3889 3890 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3886 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO_AND_LIN_ADDR(a_uReason, a_uQual, a_uInstrInfo, \ 3887 a_cbInstr, a_uGstLinAddr) \ 3888 { (a_uReason), (a_cbInstr), { (a_uInstrInfo) }, VMXINSTRID_NONE, (a_uQual), (a_uGstLinAddr), 0, 0, 0 } 3889 3890 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3891 3891 * instruction info, instruction length and guest linear address all copied 3892 3892 * from a VMXTRANSIENT structure. */ 3893 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO_AND_LIN_ADDR_FROM_TRANSIENT(a_pVmxTransient) \3894 VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_INFO_AND_LIN_ADDR((a_pVmxTransient)->uExitReason, \3895 3896 3897 3898 3893 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO_AND_LIN_ADDR_FROM_TRANSIENT(a_pVmxTransient) \ 3894 VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_INFO_AND_LIN_ADDR((a_pVmxTransient)->uExitReason, \ 3895 (a_pVmxTransient)->uExitQual, \ 3896 (a_pVmxTransient)->ExitInstrInfo.u, \ 3897 (a_pVmxTransient)->cbExitInstr, \ 3898 (a_pVmxTransient)->uGuestLinearAddr) 3899 3899 3900 3900 /** Initialize a VMXVEXITINFO structure from exit reason and pending debug 3901 3901 * exceptions. */ 3902 #define VMXVEXITINFO_INIT_WITH_ QUALIFIER_AND_DBG_XCPTS(a_uReason, a_uPendingDbgXcpts) \3902 #define VMXVEXITINFO_INIT_WITH_DBG_XCPTS(a_uReason, a_uPendingDbgXcpts) \ 3903 3903 { (a_uReason), 0, { 0 }, VMXINSTRID_NONE, 0, 0, 0, (a_uPendingDbgXcpts), 0 } 3904 3904 3905 3905 /** Initialize a VMXVEXITINFO structure from exit reason and pending debug 3906 3906 * exceptions both copied from a VMXTRANSIENT structure. */ 3907 #define VMXVEXITINFO_INIT_WITH_ QUALIFIER_AND_DBG_XCPTS_FROM_TRANSIENT(a_pVmxTransient) \3908 VMXVEXITINFO_INIT_WITH_ QUALIFIER_AND_DBG_XCPTS((a_pVmxTransient)->uExitReason, (a_pVmxTransient)->uGuestPendingDbgXcpts)3909 3910 3911 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualifi er,3907 #define VMXVEXITINFO_INIT_WITH_DBG_XCPTS_FROM_TRANSIENT(a_pVmxTransient) \ 3908 VMXVEXITINFO_INIT_WITH_DBG_XCPTS((a_pVmxTransient)->uExitReason, (a_pVmxTransient)->uGuestPendingDbgXcpts) 3909 3910 3911 /** Initialize a VMXVEXITINFO structure from exit reason, exit qualification, 3912 3912 * instruction length, guest linear address and guest physical address. */ 3913 #define VMXVEXITINFO_INIT_WITH_QUAL IFIER_AND_INSTR_LEN_AND_GST_ADDRESSES(a_uReason, a_uQualifier, a_cbInstr, \3914 3915 { (a_uReason), (a_cbInstr), { 0 }, VMXINSTRID_NONE, (a_uQual ifier), (a_uGstLinAddr), (a_uGstPhysAddr), 0, 0 }3913 #define VMXVEXITINFO_INIT_WITH_QUAL_AND_INSTR_LEN_AND_GST_ADDRESSES(a_uReason, a_uQual, a_cbInstr, \ 3914 a_uGstLinAddr, a_uGstPhysAddr) \ 3915 { (a_uReason), (a_cbInstr), { 0 }, VMXINSTRID_NONE, (a_uQual), (a_uGstLinAddr), (a_uGstPhysAddr), 0, 0 } 3916 3916 3917 3917
Note:
See TracChangeset
for help on using the changeset viewer.