VirtualBox

Changeset 49314 in vbox for trunk


Ignore:
Timestamp:
Oct 28, 2013 9:00:25 PM (11 years ago)
Author:
vboxsync
Message:

Storage: Modify hack to fix hanging VMs when the dis is full during synchronous writes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Storage/VD.cpp

    r48957 r49314  
    14331433        rc = VERR_VD_ASYNC_IO_IN_PROGRESS;
    14341434    else if (   RT_FAILURE(rc)
    1435                 && (rc != VERR_VD_ASYNC_IO_IN_PROGRESS)
    1436                 && (rc != VERR_DISK_FULL))
     1435                && (rc != VERR_VD_ASYNC_IO_IN_PROGRESS))
    14371436    {
    14381437        ASMAtomicCmpXchgS32(&pIoCtx->rcReq, rc, VINF_SUCCESS);
    1439         /*
    1440          * The I/O context completed if we have an error and there is no data
    1441          * or meta data transfer pending.
    1442          */
    1443         if (   !pIoCtx->cMetaTransfersPending
    1444             && !pIoCtx->cDataTransfersPending)
    1445             rc = VINF_VD_ASYNC_IO_FINISHED;
    1446         else
    1447             rc = VERR_VD_ASYNC_IO_IN_PROGRESS;
     1438
     1439        if (rc != VERR_DISK_FULL)
     1440        {
     1441            /*
     1442             * The I/O context completed if we have an error and there is no data
     1443             * or meta data transfer pending.
     1444             */
     1445            if (   !pIoCtx->cMetaTransfersPending
     1446                && !pIoCtx->cDataTransfersPending)
     1447                rc = VINF_VD_ASYNC_IO_FINISHED;
     1448            else
     1449                rc = VERR_VD_ASYNC_IO_IN_PROGRESS;
     1450        }
    14481451    }
    14491452
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