VirtualBox

Changeset 20567 in vbox for trunk/src/VBox/Devices/Storage


Ignore:
Timestamp:
Jun 14, 2009 8:31:54 PM (16 years ago)
Author:
vboxsync
Message:

DevATA,ATAController: Do not use MMGCRamReadNoTrapHandler nor MMGCRamWriteNoTrapHandler like that, they may both raise guru meditations. Changed the code to use the same PGMPhys*Read/Write APIs as in ring-3.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Storage/DevATA.cpp

    r20374 r20567  
    54005400}
    54015401
    5402 #ifndef IN_RING0
     5402#ifndef IN_RING0 /** @todo do this in ring-0 as well. */
    54035403/**
    54045404 * Port I/O Handler for primary port range IN string operations.
     
    54355435        cbTransfer = cTransAvailable * cb;
    54365436
    5437 #ifdef IN_RC
    5438         for (uint32_t i = 0; i < cbTransfer; i += cb)
    5439             MMGCRamWriteNoTrapHandler((char *)GCDst + i, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, cb);
    5440 #else /* !IN_RC */
    54415437        rc = PGMPhysSimpleDirtyWriteGCPtr(PDMDevHlpGetVMCPU(pDevIns), GCDst, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart, cbTransfer);
    54425438        Assert(rc == VINF_SUCCESS);
    5443 #endif /* IN_RC */
    54445439
    54455440        if (cbTransfer)
     
    54925487        cbTransfer = cTransAvailable * cb;
    54935488
    5494 #ifdef IN_RC
    5495         for (uint32_t i = 0; i < cbTransfer; i += cb)
    5496             MMGCRamReadNoTrapHandler(s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, (char *)GCSrc + i, cb);
    5497 #else /* !IN_RC */
    54985489        rc = PGMPhysSimpleReadGCPtr(PDMDevHlpGetVMCPU(pDevIns), s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart, GCSrc, cbTransfer);
    54995490        Assert(rc == VINF_SUCCESS);
    5500 #endif /* IN_RC */
    55015491
    55025492        if (cbTransfer)
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