VirtualBox

Ignore:
Timestamp:
Aug 4, 2011 7:16:53 PM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
73336
Message:

Redid the A20 gate assertion fix - the recompiler needs to be told.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/recompiler/VBoxRecompiler.c

    r38300 r38320  
    29522952#undef LOG_GROUP
    29532953#define LOG_GROUP LOG_GROUP_REM
     2954
     2955
     2956/**
     2957 * Notify the recompiler about Address Gate 20 state change.
     2958 *
     2959 * This notification is required since A20 gate changes are
     2960 * initialized from a device driver and the VM might just as
     2961 * well be in REM mode as in RAW mode.
     2962 *
     2963 * @param   pVM         VM handle.
     2964 * @param   pVCpu       VMCPU handle.
     2965 * @param   fEnable     True if the gate should be enabled.
     2966 *                      False if the gate should be disabled.
     2967 */
     2968REMR3DECL(void) REMR3A20Set(PVM pVM, PVMCPU pVCpu, bool fEnable)
     2969{
     2970    LogFlow(("REMR3A20Set: fEnable=%d\n", fEnable));
     2971    VM_ASSERT_EMT(pVM);
     2972
     2973    /** @todo SMP and the A20 gate... */
     2974    if (pVM->rem.s.Env.pVCpu == pVCpu)
     2975    {
     2976        ASMAtomicIncU32(&pVM->rem.s.cIgnoreAll);
     2977        cpu_x86_set_a20(&pVM->rem.s.Env, fEnable);
     2978        ASMAtomicDecU32(&pVM->rem.s.cIgnoreAll);
     2979    }
     2980}
    29542981
    29552982
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