VirtualBox

Changeset 12225 in vbox


Ignore:
Timestamp:
Sep 8, 2008 12:59:59 PM (16 years ago)
Author:
vboxsync
Message:

VMM: X86_DR7_ENABLED_MASK should not include GD, because it isn't a breakpoint and including it will break assumptions in CPUMRecalcHyperDRx (DBGFBpGetDR7 always returns GD).

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/x86.h

    r12155 r12225  
    719719
    720720/** Mask used to check if any breakpoints are enabled. */
    721 #define X86_DR7_ENABLED_MASK                (RT_BIT(0) | RT_BIT(1) | RT_BIT(2) | RT_BIT(3) | RT_BIT(4) | RT_BIT(5) | RT_BIT(6) | RT_BIT(7) | X86_DR7_GD)
     721#define X86_DR7_ENABLED_MASK                (RT_BIT(0) | RT_BIT(1) | RT_BIT(2) | RT_BIT(3) | RT_BIT(4) | RT_BIT(5) | RT_BIT(6) | RT_BIT(7))
    722722
    723723/** @} */
  • trunk/src/VBox/VMM/VMMR0/HWACCMR0.cpp

    r12162 r12225  
    752752     */
    753753    uint64_t u64DR7 = ASMGetDR7();
    754     if (u64DR7 & X86_DR7_ENABLED_MASK)
     754    if (u64DR7 & (X86_DR7_ENABLED_MASK | X86_DR7_GD))
    755755    {
    756756        pVM->hwaccm.s.savedhoststate.dr7  = u64DR7;
  • trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp

    r12162 r12225  
    978978#ifdef VBOX_WITH_HWACCM_DEBUG_REGISTER_SUPPORT
    979979        /* Any guest breakpoints enabled? */
    980         if (    (pCtx->dr7 & X86_DR7_ENABLED_MASK)
     980        if (    (pCtx->dr7 & (X86_DR7_ENABLED_MASK | X86_DR7_GD))
    981981            &&  !pVM->hwaccm.s.savedhoststate.fHostDebugRegsSaved)
    982982        {
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