VirtualBox

Changeset 74152 in vbox


Ignore:
Timestamp:
Sep 8, 2018 10:49:05 AM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
124924
Message:

VMM/IEM: Nested VMX: bugref:9180 vmlaunch/vmresume bits. Granularity bit checks consistency.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp.h

    r74151 r74152  
    25402540
    25412541            /* Granularity. */
    2542             if (   (   (SelReg.u32Limit & 0xfff) != 0xfff
    2543                     && uGranularity == 0)
    2544                 || (   (SelReg.u32Limit & 0xfff00000)
    2545                     && uGranularity == 1))
     2542            if (   ((SelReg.u32Limit & 0x00000fff) == 0x00000fff || !uGranularity)
     2543                && ((SelReg.u32Limit & 0xfff00000) == 0x00000000 ||  uGranularity))
    25462544            { /* likely */ }
    25472545            else
     
    27072705                IEM_VMX_VMENTRY_FAILED_RET(pVCpu, pszInstr, pszFailure, kVmxVInstrDiag_Vmentry_GuestSegAttrLdtrPresent);
    27082706
    2709             if (   (   (Ldtr.u32Limit & 0xfff) != 0xfff
    2710                     && Ldtr.Attr.n.u1Granularity == 0)
    2711                 || (   (Ldtr.u32Limit & 0xfff00000)
    2712                     && Ldtr.Attr.n.u1Granularity == 1))
     2707            if (   ((Ldtr.u32Limit & 0x00000fff) == 0x00000fff || !Ldtr.Attr.n.u1Granularity)
     2708                && ((Ldtr.u32Limit & 0xfff00000) == 0x00000000 ||  Ldtr.Attr.n.u1Granularity))
    27132709            { /* likely */ }
    27142710            else
     
    27712767            IEM_VMX_VMENTRY_FAILED_RET(pVCpu, pszInstr, pszFailure, kVmxVInstrDiag_Vmentry_GuestSegAttrTrPresent);
    27722768
    2773         if (   (   (Tr.u32Limit & 0xfff) != 0xfff
    2774                 && Tr.Attr.n.u1Granularity == 0)
    2775             || (   (Tr.u32Limit & 0xfff00000)
    2776                 && Tr.Attr.n.u1Granularity == 1))
     2769        if (   ((Tr.u32Limit & 0x00000fff) == 0x00000fff || !Tr.Attr.n.u1Granularity)
     2770            && ((Tr.u32Limit & 0xfff00000) == 0x00000000 ||  Tr.Attr.n.u1Granularity))
    27772771        { /* likely */ }
    27782772        else
Note: See TracChangeset for help on using the changeset viewer.

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