VirtualBox

Changeset 37308 in vbox


Ignore:
Timestamp:
Jun 2, 2011 12:53:10 PM (14 years ago)
Author:
vboxsync
Message:

tstVDIo: Implement support for async flushes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Storage/testcase/tstVDIo.cpp

    r36949 r37308  
    10621062        else if (fAsync)
    10631063        {
    1064             /** @todo  */
    1065             rc = VERR_NOT_IMPLEMENTED;
     1064            VDIOREQ IoReq;
     1065            RTSEMEVENT EventSem;
     1066
     1067            rc = RTSemEventCreate(&EventSem);
     1068            if (RT_SUCCESS(rc))
     1069            {
     1070                memset(&IoReq, 0, sizeof(VDIOREQ));
     1071                IoReq.enmTxDir = VDIOREQTXDIR_FLUSH;
     1072                IoReq.pvUser   = pDisk;
     1073                IoReq.idx      = 0;
     1074                rc = VDAsyncFlush(pDisk->pVD, tstVDIoTestReqComplete, &IoReq, EventSem);
     1075                if (rc == VERR_VD_ASYNC_IO_IN_PROGRESS)
     1076                {
     1077                    rc = RTSemEventWait(EventSem, RT_INDEFINITE_WAIT);
     1078                    AssertRC(rc);
     1079                }
     1080                else if (rc == VINF_VD_ASYNC_IO_FINISHED)
     1081                    rc = VINF_SUCCESS;
     1082
     1083                RTSemEventDestroy(EventSem);
     1084            }
    10661085        }
    10671086        else
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