VirtualBox

Changeset 47743 in vbox for trunk/src/VBox/VMM/VMMR0


Ignore:
Timestamp:
Aug 14, 2013 11:49:19 PM (11 years ago)
Author:
vboxsync
Message:

adjusted my assertion.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp

    r47742 r47743  
    55105510     *    - For the remaining data segments no bits are defined.
    55115511     *
     5512     * The present bit and the unused bit has been observed to be set at the
     5513     * same time (the selector was supposed to invalid as we started executing
     5514     * a V8086 interrupt in ring-0).
     5515     *
    55125516     * What should be important for the rest of the VBox code that the P bit is
    55135517     * cleared.  Some of the other VBox code recognizes the unusable bit, but
     
    55215525    {
    55225526        Assert(idxSel != VMX_VMCS16_GUEST_FIELD_TR);          /* TR is the only selector that can never be unusable. */
    5523 #if defined(LOG_ENABLED) || defined(VBOX_STRICT)
    5524         uint32_t fAttr = pSelReg->Attr.u;
    5525 #endif
     5527
    55265528        /* Masking off: X86DESCATTR_P, X86DESCATTR_LIMIT_HIGH, and X86DESCATTR_AVL. The latter two are really irrelevant. */
    55275529        pSelReg->Attr.u &= X86DESCATTR_UNUSABLE | X86DESCATTR_L | X86DESCATTR_D | X86DESCATTR_G
    55285530                         | X86DESCATTR_DPL | X86DESCATTR_TYPE | X86DESCATTR_DT;
    5529         Log4(("hmR0VmxReadSegmentReg: Unusable idxSel=%#x attr=%#x -> %#x\n", idxSel, fAttr, pSelReg->Attr.u));
     5531        Log4(("hmR0VmxReadSegmentReg: Unusable idxSel=%#x attr=%#x -> %#x\n", idxSel, u32Val, pSelReg->Attr.u));
    55305532#ifdef DEBUG_bird
    5531         AssertMsg(fAttr == pSelReg->Attr.u, ("%#x: %#x != %#x\n", idxSel, fAttr, pSelReg->Attr.u));
     5533        AssertMsg((u32Val & ~X86DESCATTR_P) == pSelReg->Attr.u,
     5534                  ("%#x: %#x != %#x (sel=%#x base=%#llx limit=%#x)\n",
     5535                   idxSel, u32Val, pSelReg->Attr.u, pSelReg->Sel, pSelReg->u64Base, pSelReg->u32Limit));
    55325536#endif
    55335537    }
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