VirtualBox

Changeset 76150 in vbox for trunk/include/VBox/vmm


Ignore:
Timestamp:
Dec 11, 2018 7:17:18 AM (6 years ago)
Author:
vboxsync
Message:

VMM: Nested VMX: bugref:9180 Use the VMXMSRS struct.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/cpumctx.h

    r76148 r76150  
    669669                /** 0x3a2 - Padding. */
    670670                uint8_t                 abPadding0[6];
    671                 /** 0x3a8 - VMX MSRs. */
    672                 uint64_t                uMsrFeatCtrl;
    673                 uint64_t                uMsrBasic;
    674                 uint64_t                uMsrPinCtls;
    675                 uint64_t                uMsrProcCtls;
    676                 uint64_t                uMsrProcCtls2;
    677                 uint64_t                uMsrExitCtls;
    678                 uint64_t                uMsrEntryCtls;
    679                 uint64_t                uMsrTruePinCtls;
    680                 uint64_t                uMsrTrueProcCtls;
    681                 uint64_t                uMsrTrueEntryCtls;
    682                 uint64_t                uMsrTrueExitCtls;
    683                 uint64_t                uMsrMisc;
    684                 uint64_t                uMsrCr0Fixed0;
    685                 uint64_t                uMsrCr0Fixed1;
    686                 uint64_t                uMsrCr4Fixed0;
    687                 uint64_t                uMsrCr4Fixed1;
    688                 uint64_t                uMsrVmcsEnum;
    689                 uint64_t                uMsrVmFunc;
    690                 uint64_t                uMsrEptVpidCaps;
    691                 /** 0x440 - MSRs reserved for future expansion. */
    692                 uint64_t                uMsrRsvd[5];
     671                /** 0x3a8 - Guest VMX MSRs. */
     672                VMXMSRS                 Msrs;
    693673            } vmx;
    694674        } CPUM_UNION_NM(s);
     
    805785AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uVmentryTick,           0x398);
    806786AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.offVirtApicWrite,       0x3a0);
    807 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrFeatCtrl,           0x3a8);
    808 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrBasic,              0x3b0);
    809 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrPinCtls,            0x3b8);
    810 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrProcCtls,           0x3c0);
    811 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrProcCtls2,          0x3c8);
    812 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrExitCtls,           0x3d0);
    813 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrEntryCtls,          0x3d8);
    814 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrTruePinCtls,        0x3e0);
    815 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrTrueProcCtls,       0x3e8);
    816 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrTrueEntryCtls,      0x3f0);
    817 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrTrueExitCtls,       0x3f8);
    818 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrMisc,               0x400);
    819 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrCr0Fixed0,          0x408);
    820 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrCr0Fixed1,          0x410);
    821 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrCr4Fixed0,          0x418);
    822 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrCr4Fixed1,          0x420);
    823 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrVmcsEnum,           0x428);
    824 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrVmFunc,             0x430);
    825 AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrEptVpidCaps,        0x438);
     787AssertCompileMemberOffset(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.Msrs,                   0x3a8);
    826788AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pVmcsR0,           8);
    827789AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pShadowVmcsR0,     8);
     
    832794AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pvMsrBitmapR0,     8);
    833795AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.pvIoBitmapR0,      8);
    834 AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.uMsrFeatCtrl,      8);
     796AssertCompileMemberAlignment(CPUMCTX, hwvirt.CPUM_UNION_NM(s.) vmx.Msrs,              8);
    835797AssertCompileMemberOffset(CPUMCTX, hwvirt.enmHwvirt,           0x468);
    836798AssertCompileMemberOffset(CPUMCTX, hwvirt.fGif,                0x46c);
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette