VirtualBox

Changeset 17531 in vbox


Ignore:
Timestamp:
Mar 8, 2009 2:58:03 AM (16 years ago)
Author:
vboxsync
Message:

emInterpretStosWD: don't use PGMPhysWriteGCPtr but emRamWrite (new phys code only). I'd missed this case and it hit when booting windows with additions.

File:
1 edited

Legend:

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

    r17515 r17531  
    13421342        LogFlow(("emInterpretStosWD dest=%04X:%RGv (%RGv) cbSize=%d\n", pRegFrame->es, GCOffset, GCDest, cbSize));
    13431343
     1344#ifdef VBOX_WITH_NEW_PHYS_CODE
     1345        rc = emRamWrite(pVM, pRegFrame, GCDest, &pRegFrame->rax, cbSize);
     1346#else
    13441347        rc = PGMPhysWriteGCPtr(pVM, GCDest, &pRegFrame->rax, cbSize);
     1348#endif
    13451349        if (RT_FAILURE(rc))
    13461350            return VERR_EM_INTERPRETER;
     
    13701374            return VINF_SUCCESS;
    13711375
    1372         /* Do *not* try emulate cross page stuff here, this also fends off big copies which
    1373            would kill PGMR0DynMap. */
     1376        /*
     1377         * Do *not* try emulate cross page stuff here because we don't know what might
     1378         * be waiting for us on the subsequent pages. The caller has only asked us to
     1379         * ignore access handlers fro the current page.
     1380         * This also fends off big stores which would quickly kill PGMR0DynMap.
     1381         */
    13741382        if (    cbSize > PAGE_SIZE
    13751383            ||  cTransfers > PAGE_SIZE
     
    13951403        while (cTransfers)
    13961404        {
     1405#ifdef VBOX_WITH_NEW_PHYS_CODE
     1406            rc = emRamWrite(pVM, pRegFrame, GCDest, &pRegFrame->rax, cbSize);
     1407#else
    13971408            rc = PGMPhysWriteGCPtr(pVM, GCDest, &pRegFrame->rax, cbSize);
     1409#endif
    13981410            if (RT_FAILURE(rc))
    13991411            {
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