VirtualBox

Ignore:
Timestamp:
Jul 25, 2019 5:21:24 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
132417
Message:

Runtime/RTIoQueue: Updates

Location:
trunk/src/VBox/Runtime/common/ioqueue
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/common/ioqueue/ioqueue-aiofile-provider.cpp

    r79951 r79983  
    8888/** @interface_method_impl{RTIOQUEUEPROVVTABLE,pfnQueueInit} */
    8989static DECLCALLBACK(int) rtIoQueueAioFileProv_QueueInit(RTIOQUEUEPROV hIoQueueProv, uint32_t fFlags,
    90                                                         size_t cSqEntries, size_t cCqEntries)
     90                                                        uint32_t cSqEntries, uint32_t cCqEntries)
    9191{
    9292    RT_NOREF(fFlags, cCqEntries);
     
    9696
    9797    pThis->cReqsToCommitMax = cSqEntries;
    98     pThis->cReqsFreeMax     = (uint32_t)cSqEntries;
     98    pThis->cReqsFreeMax     = cSqEntries;
    9999    pThis->cReqsFree        = 0;
    100100
     
    105105        if (RT_LIKELY(pThis->pahReqsFree))
    106106        {
    107             rc = RTFileAioCtxCreate(&pThis->hAioCtx, (uint32_t)cSqEntries, RTFILEAIOCTX_FLAGS_WAIT_WITHOUT_PENDING_REQUESTS);
     107            rc = RTFileAioCtxCreate(&pThis->hAioCtx, cSqEntries, RTFILEAIOCTX_FLAGS_WAIT_WITHOUT_PENDING_REQUESTS);
    108108            if (RT_SUCCESS(rc))
    109109                return VINF_SUCCESS;
     
    251251                RTFILEAIOREQ hReq = ahReqs[i];
    252252
    253                 paCEvt[idxCEvt].rcReq = RTFileAioReqGetRC(hReq, NULL);
    254                 paCEvt[idxCEvt].pvUser = RTFileAioReqGetUser(hReq);
     253                paCEvt[idxCEvt].rcReq    = RTFileAioReqGetRC(hReq, &paCEvt[idxCEvt].cbXfered);
     254                paCEvt[idxCEvt].pvUser   = RTFileAioReqGetUser(hReq);
    255255                idxCEvt++;
    256256
  • trunk/src/VBox/Runtime/common/ioqueue/ioqueue-stdfile-provider.cpp

    r79949 r79983  
    102102{
    103103    /** Size of the submission queue in entries. */
    104     size_t                      cSqEntries;
     104    uint32_t                    cSqEntries;
    105105    /** Size of the completion queue in entries. */
    106     size_t                      cCqEntries;
     106    uint32_t                    cCqEntries;
    107107    /** Pointer to the submission queue base. */
    108108    PRTIOQUEUESSQENTRY          paSqEntryBase;
     
    257257/** @interface_method_impl{RTIOQUEUEPROVVTABLE,pfnQueueInit} */
    258258static DECLCALLBACK(int) rtIoQueueStdFileProv_QueueInit(RTIOQUEUEPROV hIoQueueProv, uint32_t fFlags,
    259                                                         size_t cSqEntries, size_t cCqEntries)
     259                                                        uint32_t cSqEntries, uint32_t cCqEntries)
    260260{
    261261    RT_NOREF(fFlags);
     
    264264    int rc = VINF_SUCCESS;
    265265
    266     pThis->cSqEntries    = cSqEntries;
    267     pThis->cCqEntries    = cCqEntries;
    268     pThis->idxSqProd = 0;
    269     pThis->idxSqCons = 0;
    270     pThis->idxCqProd = 0;
    271     pThis->idxCqCons = 0;
    272     pThis->fShutdown     = false;
    273     pThis->fState        = 0;
     266    pThis->cSqEntries = cSqEntries;
     267    pThis->cCqEntries = cCqEntries;
     268    pThis->idxSqProd  = 0;
     269    pThis->idxSqCons  = 0;
     270    pThis->idxCqProd  = 0;
     271    pThis->idxCqCons  = 0;
     272    pThis->fShutdown  = false;
     273    pThis->fState     = 0;
    274274
    275275    pThis->paSqEntryBase = (PRTIOQUEUESSQENTRY)RTMemAllocZ(cSqEntries * sizeof(RTIOQUEUESSQENTRY));
  • trunk/src/VBox/Runtime/common/ioqueue/ioqueuebase.cpp

    r79952 r79983  
    128128
    129129RTDECL(int) RTIoQueueCreate(PRTIOQUEUE phIoQueue, PCRTIOQUEUEPROVVTABLE pProvVTable,
    130                             uint32_t fFlags, size_t cSqEntries, size_t cCqEntries)
     130                            uint32_t fFlags, uint32_t cSqEntries, uint32_t cCqEntries)
    131131{
    132132    AssertPtrReturn(phIoQueue, VERR_INVALID_POINTER);
     
    142142        pThis->pVTbl          = pProvVTable;
    143143        pThis->hIoQueueProv   = (RTIOQUEUEPROV)&pThis->abInst[0];
    144         pThis->cSqEntries     = (uint32_t)cSqEntries;
    145         pThis->cCqEntries     = (uint32_t)cCqEntries;
     144        pThis->cSqEntries     = cSqEntries;
     145        pThis->cCqEntries     = cCqEntries;
    146146        pThis->cReqsCommitted = 0;
    147147        pThis->cReqsPrepared  = 0;
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