VirtualBox

Changeset 49085 in vbox


Ignore:
Timestamp:
Oct 14, 2013 12:45:59 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
89897
Message:

VMM/HMVMXR0: Partially revert r89778. Back to disassembling and interpreting string IO instructions, doesn't yet work.

File:
1 edited

Legend:

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

    r49026 r49085  
    97889788    if (fIOString)
    97899789    {
     9790#if 0       /* Not yet ready. IEM gurus with debian 32-bit guest without NP (on ATA reads). See @bugref{5752#c158}*/
    97909791        /*
    97919792         * INS/OUTS - I/O String instruction.
     
    98329833        VMCPU_HMCF_SET(pVCpu, HM_CHANGED_GUEST_RIP);
    98339834        fUpdateRipAlready = true;
     9835#else
     9836        PDISCPUSTATE pDis = &pVCpu->hm.s.DisState;
     9837        rcStrict = EMInterpretDisasCurrent(pVM, pVCpu, pDis, NULL);
     9838        if (RT_SUCCESS(rcStrict))
     9839        {
     9840            if (fIOWrite)
     9841            {
     9842                rcStrict = IOMInterpretOUTSEx(pVM, pVCpu, CPUMCTX2CORE(pMixedCtx), uIOPort, pDis->fPrefix,
     9843                                              (DISCPUMODE)pDis->uAddrMode, cbValue);
     9844                STAM_COUNTER_INC(&pVCpu->hm.s.StatExitIOStringWrite);
     9845            }
     9846            else
     9847            {
     9848                rcStrict = IOMInterpretINSEx(pVM, pVCpu, CPUMCTX2CORE(pMixedCtx), uIOPort, pDis->fPrefix,
     9849                                             (DISCPUMODE)pDis->uAddrMode, cbValue);
     9850                STAM_COUNTER_INC(&pVCpu->hm.s.StatExitIOStringRead);
     9851            }
     9852        }
     9853        else
     9854        {
     9855            AssertMsg(rcStrict == VERR_EM_INTERPRETER, ("rcStrict=%Rrc RIP %#RX64\n", VBOXSTRICTRC_VAL(rcStrict), pMixedCtx->rip));
     9856            rcStrict = VINF_EM_RAW_EMULATE_INSTR;
     9857        }
     9858#endif
    98349859    }
    98359860    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