VirtualBox

Changeset 43725 in vbox


Ignore:
Timestamp:
Oct 24, 2012 11:43:51 AM (12 years ago)
Author:
vboxsync
Message:

AsyncCompletion: Fix hung flush requests if the underlying filesystem or block device doesn't support asynchronous flushes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/PDMAsyncCompletionFileNormal.cpp

    r41862 r43725  
    692692                                          PPDMACTASKFILE pTask)
    693693{
     694    LogFlowFunc(("pAioMgr=%#p pEndpoint=%#p offStart=%RTfoff cbRange=%zu pTask=%#p\n",
     695                 pAioMgr, pEndpoint, offStart, cbRange, pTask));
     696
    694697    AssertMsg(!pdmacFileAioMgrNormalIsRangeLocked(pEndpoint, offStart, cbRange, pTask),
    695698              ("Range is already locked offStart=%RTfoff cbRange=%u\n",
     
    722725{
    723726    PPDMACTASKFILE pTasksWaitingHead;
     727
     728    LogFlowFunc(("pAioMgr=%#p pEndpoint=%#p pRangeLock=%#p\n",
     729                 pAioMgr, pEndpoint, pRangeLock));
    724730
    725731    AssertPtr(pRangeLock);
     
    13481354            AssertMsg(pEndpoint->pFlushReq == pTask, ("Failed flush request doesn't match active one\n"));
    13491355            /* The other method will take over now. */
     1356
     1357            pEndpoint->pFlushReq = NULL;
     1358            /* Call completion callback */
     1359            LogFlow(("Flush task=%#p completed with %Rrc\n", pTask, VINF_SUCCESS));
     1360            pTask->pfnCompleted(pTask, pTask->pvUser, VINF_SUCCESS);
     1361            pdmacFileTaskFree(pEndpoint, pTask);
    13501362        }
    13511363        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