VirtualBox

Changeset 29833 in vbox for trunk/src


Ignore:
Timestamp:
May 26, 2010 9:40:59 PM (15 years ago)
Author:
vboxsync
Message:

fileaio-freebsd.cpp: Fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r3/freebsd/fileaio-freebsd.cpp

    r29237 r29833  
    407407            if (RT_UNLIKELY(rcBSD < 0))
    408408            {
    409                 if (rcBSD == EAGAIN)
     409                if (errno == EAGAIN)
    410410                    rc = VERR_FILE_AIO_INSUFFICIENT_RESSOURCES;
    411411                else
     
    417417                    pReqInt = pahReqs[i];
    418418                    rcBSD = aio_error(&pReqInt->AioCB);
    419                     if (rcBSD == EINVAL)
     419                    if (rcBSD == EINVAL || rcBSD == EAGAIN)
    420420                    {
    421421                        /* Was not submitted. */
     
    441441
    442442        /* Check if we have a flush request now. */
    443         if (cReqs)
     443        if (cReqs && RT_SUCCESS_NP(rc))
    444444        {
    445445            pReqInt = pahReqs[0];
     
    455455                 if (RT_UNLIKELY(rcBSD < 0))
    456456                 {
    457                     RTFILEAIOREQ_SET_STATE(pReqInt, COMPLETED);
    458                     pReqInt->Rc = RTErrConvertFromErrno(errno);
    459                     pReqInt->cbTransfered = 0;
    460                     return pReqInt->Rc;
     457                    if (rcBSD == EAGAIN)
     458                    {
     459                        /* Was not submitted. */
     460                        RTFILEAIOREQ_SET_STATE(pReqInt, PREPARED);
     461                        pReqInt->pCtxInt = NULL;
     462                        return VERR_FILE_AIO_INSUFFICIENT_RESSOURCES;
     463                    }
     464                    else
     465                    {
     466                        RTFILEAIOREQ_SET_STATE(pReqInt, COMPLETED);
     467                        pReqInt->Rc = RTErrConvertFromErrno(errno);
     468                        pReqInt->cbTransfered = 0;
     469                        return pReqInt->Rc;
     470                    }
    461471                 }
    462472
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