VirtualBox

Changeset 66263 in vbox for trunk/src/VBox/Storage


Ignore:
Timestamp:
Mar 27, 2017 11:11:41 AM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
114184
Message:

Storage/tstVDIo: Rename VDIOREQ to TSTVDIOREQ, VDIOREQ will be reused in the near future in the public VD API

File:
1 edited

Legend:

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

    r66251 r66263  
    159159 * Transfer direction.
    160160 */
    161 typedef enum VDIOREQTXDIR
    162 {
    163     VDIOREQTXDIR_READ = 0,
    164     VDIOREQTXDIR_WRITE,
    165     VDIOREQTXDIR_FLUSH,
    166     VDIOREQTXDIR_DISCARD
    167 } VDIOREQTXDIR;
     161typedef enum TSTVDIOREQTXDIR
     162{
     163    TSTVDIOREQTXDIR_READ = 0,
     164    TSTVDIOREQTXDIR_WRITE,
     165    TSTVDIOREQTXDIR_FLUSH,
     166    TSTVDIOREQTXDIR_DISCARD
     167} TSTVDIOREQTXDIR;
    168168
    169169/**
    170170 * I/O request.
    171171 */
    172 typedef struct VDIOREQ
     172typedef struct TSTVDIOREQ
    173173{
    174174    /** Transfer type. */
    175     VDIOREQTXDIR  enmTxDir;
     175    TSTVDIOREQTXDIR  enmTxDir;
    176176    /** slot index. */
    177     unsigned      idx;
     177    unsigned         idx;
    178178    /** Start offset. */
    179     uint64_t      off;
     179    uint64_t         off;
    180180    /** Size to transfer. */
    181     size_t        cbReq;
     181    size_t           cbReq;
    182182    /** S/G Buffer */
    183     RTSGBUF       SgBuf;
     183    RTSGBUF          SgBuf;
    184184    /** Flag whether the request is outstanding or not. */
    185     volatile bool fOutstanding;
     185    volatile bool    fOutstanding;
    186186    /** Buffer to use for reads. */
    187     void          *pvBufRead;
     187    void             *pvBufRead;
    188188    /** Contiguous buffer pointer backing the segments. */
    189     void          *pvBuf;
     189    void             *pvBuf;
    190190    /** Opaque user data. */
    191     void          *pvUser;
     191    void             *pvUser;
    192192    /** Number of segments used for the data buffer. */
    193     uint32_t      cSegs;
     193    uint32_t         cSegs;
    194194    /** Array of data segments. */
    195     RTSGSEG       aSegs[10];
    196 } VDIOREQ, *PVDIOREQ;
     195    RTSGSEG          aSegs[10];
     196} TSTVDIOREQ, *PTSTVDIOREQ;
    197197
    198198/**
     
    543543static bool tstVDIoTestRunning(PVDIOTEST pIoTest);
    544544static void tstVDIoTestDestroy(PVDIOTEST pIoTest);
    545 static bool tstVDIoTestReqOutstanding(PVDIOREQ pIoReq);
    546 static int  tstVDIoTestReqInit(PVDIOTEST pIoTest, PVDIOREQ pIoReq, void *pvUser);
     545static bool tstVDIoTestReqOutstanding(PTSTVDIOREQ pIoReq);
     546static int  tstVDIoTestReqInit(PVDIOTEST pIoTest, PTSTVDIOREQ pIoReq, void *pvUser);
    547547static DECLCALLBACK(void) tstVDIoTestReqComplete(void *pvUser1, void *pvUser2, int rcReq);
    548548
     
    765765        if (RT_SUCCESS(rc))
    766766        {
    767             PVDIOREQ paIoReq = NULL;
     767            PTSTVDIOREQ paIoReq = NULL;
    768768            unsigned cMaxTasksOutstanding = fAsync ? cMaxReqs : 1;
    769769            RTSEMEVENT EventSem;
    770770
    771771            rc = RTSemEventCreate(&EventSem);
    772             paIoReq = (PVDIOREQ)RTMemAllocZ(cMaxTasksOutstanding * sizeof(VDIOREQ));
     772            paIoReq = (PTSTVDIOREQ)RTMemAllocZ(cMaxTasksOutstanding * sizeof(TSTVDIOREQ));
    773773            if (paIoReq && RT_SUCCESS(rc))
    774774            {
     
    808808                                    switch (paIoReq[idx].enmTxDir)
    809809                                    {
    810                                         case VDIOREQTXDIR_READ:
     810                                        case TSTVDIOREQTXDIR_READ:
    811811                                        {
    812812                                            rc = VDRead(pDisk->pVD, paIoReq[idx].off, paIoReq[idx].aSegs[0].pvSeg, paIoReq[idx].cbReq);
     
    826826                                            break;
    827827                                        }
    828                                         case VDIOREQTXDIR_WRITE:
     828                                        case TSTVDIOREQTXDIR_WRITE:
    829829                                        {
    830830                                            rc = VDWrite(pDisk->pVD, paIoReq[idx].off, paIoReq[idx].aSegs[0].pvSeg, paIoReq[idx].cbReq);
     
    839839                                            break;
    840840                                        }
    841                                         case VDIOREQTXDIR_FLUSH:
     841                                        case TSTVDIOREQTXDIR_FLUSH:
    842842                                        {
    843843                                            rc = VDFlush(pDisk->pVD);
    844844                                            break;
    845845                                        }
    846                                         case VDIOREQTXDIR_DISCARD:
     846                                        case TSTVDIOREQTXDIR_DISCARD:
    847847                                            AssertMsgFailed(("Invalid\n"));
    848848                                    }
     
    857857                                    switch (paIoReq[idx].enmTxDir)
    858858                                    {
    859                                         case VDIOREQTXDIR_READ:
     859                                        case TSTVDIOREQTXDIR_READ:
    860860                                        {
    861861                                            rc = VDAsyncRead(pDisk->pVD, paIoReq[idx].off, paIoReq[idx].cbReq, &paIoReq[idx].SgBuf,
     
    863863                                            break;
    864864                                        }
    865                                         case VDIOREQTXDIR_WRITE:
     865                                        case TSTVDIOREQTXDIR_WRITE:
    866866                                        {
    867867                                            rc = VDAsyncWrite(pDisk->pVD, paIoReq[idx].off, paIoReq[idx].cbReq, &paIoReq[idx].SgBuf,
     
    869869                                            break;
    870870                                        }
    871                                         case VDIOREQTXDIR_FLUSH:
     871                                        case TSTVDIOREQTXDIR_FLUSH:
    872872                                        {
    873873                                            rc = VDAsyncFlush(pDisk->pVD, tstVDIoTestReqComplete, &paIoReq[idx], EventSem);
    874874                                            break;
    875875                                        }
    876                                         case VDIOREQTXDIR_DISCARD:
     876                                        case TSTVDIOREQTXDIR_DISCARD:
    877877                                            AssertMsgFailed(("Invalid\n"));
    878878                                    }
     
    889889                                        switch (paIoReq[idx].enmTxDir)
    890890                                        {
    891                                             case VDIOREQTXDIR_READ:
     891                                            case TSTVDIOREQTXDIR_READ:
    892892                                            {
    893893                                                if (pDisk->pMemDiskVerify)
     
    906906                                                break;
    907907                                            }
    908                                             case VDIOREQTXDIR_WRITE:
     908                                            case TSTVDIOREQTXDIR_WRITE:
    909909                                            {
    910910                                                if (pDisk->pMemDiskVerify)
     
    919919                                                break;
    920920                                            }
    921                                             case VDIOREQTXDIR_FLUSH:
     921                                            case TSTVDIOREQTXDIR_FLUSH:
    922922                                                break;
    923                                             case VDIOREQTXDIR_DISCARD:
     923                                            case TSTVDIOREQTXDIR_DISCARD:
    924924                                                AssertMsgFailed(("Invalid\n"));
    925925                                        }
     
    10161016        else if (fAsync)
    10171017        {
    1018             VDIOREQ IoReq;
     1018            TSTVDIOREQ IoReq;
    10191019            RTSEMEVENT EventSem;
    10201020
     
    10221022            if (RT_SUCCESS(rc))
    10231023            {
    1024                 memset(&IoReq, 0, sizeof(VDIOREQ));
    1025                 IoReq.enmTxDir = VDIOREQTXDIR_FLUSH;
     1024                memset(&IoReq, 0, sizeof(TSTVDIOREQ));
     1025                IoReq.enmTxDir = TSTVDIOREQTXDIR_FLUSH;
    10261026                IoReq.pvUser   = pDisk;
    10271027                IoReq.idx      = 0;
     
    12471247            else
    12481248            {
    1249                 VDIOREQ IoReq;
     1249                TSTVDIOREQ IoReq;
    12501250                RTSEMEVENT EventSem;
    12511251
     
    12531253                if (RT_SUCCESS(rc))
    12541254                {
    1255                     memset(&IoReq, 0, sizeof(VDIOREQ));
    1256                     IoReq.enmTxDir = VDIOREQTXDIR_FLUSH;
     1255                    memset(&IoReq, 0, sizeof(TSTVDIOREQ));
     1256                    IoReq.enmTxDir = TSTVDIOREQTXDIR_FLUSH;
    12571257                    IoReq.pvUser   = pDisk;
    12581258                    IoReq.idx      = 0;
     
    24262426}
    24272427
    2428 static bool tstVDIoTestReqOutstanding(PVDIOREQ pIoReq)
     2428static bool tstVDIoTestReqOutstanding(PTSTVDIOREQ pIoReq)
    24292429{
    24302430    return pIoReq->fOutstanding;
     
    24742474}
    24752475
    2476 static int tstVDIoTestReqInit(PVDIOTEST pIoTest, PVDIOREQ pIoReq, void *pvUser)
     2476static int tstVDIoTestReqInit(PVDIOTEST pIoTest, PTSTVDIOREQ pIoReq, void *pvUser)
    24772477{
    24782478    int rc = VINF_SUCCESS;
     
    24812481    {
    24822482        /* Read or Write? */
    2483         pIoReq->enmTxDir = tstVDIoTestIsTrue(pIoTest, pIoTest->uWriteChance) ? VDIOREQTXDIR_WRITE : VDIOREQTXDIR_READ;
     2483        pIoReq->enmTxDir = tstVDIoTestIsTrue(pIoTest, pIoTest->uWriteChance) ? TSTVDIOREQTXDIR_WRITE : TSTVDIOREQTXDIR_READ;
    24842484        pIoReq->cbReq = RT_MIN(pIoTest->cbBlkIo, pIoTest->cbIo);
    24852485        pIoTest->cbIo -= pIoReq->cbReq;
     
    24872487        void *pvBuf = NULL;
    24882488
    2489         if (pIoReq->enmTxDir == VDIOREQTXDIR_WRITE)
     2489        if (pIoReq->enmTxDir == TSTVDIOREQTXDIR_WRITE)
    24902490        {
    24912491            if (pIoTest->pPattern)
     
    25752575{
    25762576    RT_NOREF1(rcReq);
    2577     PVDIOREQ pIoReq = (PVDIOREQ)pvUser1;
     2577    PTSTVDIOREQ pIoReq = (PTSTVDIOREQ)pvUser1;
    25782578    RTSEMEVENT hEventSem = (RTSEMEVENT)pvUser2;
    25792579    PVDDISK pDisk = (PVDDISK)pIoReq->pvUser;
     
    25852585        switch (pIoReq->enmTxDir)
    25862586        {
    2587             case VDIOREQTXDIR_READ:
     2587            case TSTVDIOREQTXDIR_READ:
    25882588            {
    25892589                RTCritSectEnter(&pDisk->CritSectVerify);
     
    26012601                break;
    26022602            }
    2603             case VDIOREQTXDIR_WRITE:
     2603            case TSTVDIOREQTXDIR_WRITE:
    26042604            {
    26052605                RTCritSectEnter(&pDisk->CritSectVerify);
     
    26172617                break;
    26182618            }
    2619             case VDIOREQTXDIR_FLUSH:
    2620             case VDIOREQTXDIR_DISCARD:
     2619            case TSTVDIOREQTXDIR_FLUSH:
     2620            case TSTVDIOREQTXDIR_DISCARD:
    26212621                break;
    26222622        }
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