Lines Matching defs:pRangeLock

47                                                          PPDMACFILERANGELOCK pRangeLock);
653 PPDMACFILERANGELOCK pRangeLock;
654 pRangeLock = (PPDMACFILERANGELOCK)RTAvlrFileOffsetRangeGet(pEndpoint->AioMgr.pTreeRangesLocked, offStart);
655 if (!pRangeLock)
657 pRangeLock = (PPDMACFILERANGELOCK)RTAvlrFileOffsetGetBestFit(pEndpoint->AioMgr.pTreeRangesLocked, offStart, true);
659 if ( !pRangeLock
660 || !( (pRangeLock->Core.Key) <= (offStart + (RTFOFF)cbRange - 1)
661 && (pRangeLock->Core.KeyLast) >= offStart))
663 pRangeLock = NULL; /* False alarm */
668 if (pRangeLock)
673 if (!pRangeLock->pWaitingTasksHead)
675 Assert(!pRangeLock->pWaitingTasksTail);
676 pRangeLock->pWaitingTasksHead = pTask;
677 pRangeLock->pWaitingTasksTail = pTask;
681 AssertPtr(pRangeLock->pWaitingTasksTail);
682 pRangeLock->pWaitingTasksTail->pNext = pTask;
683 pRangeLock->pWaitingTasksTail = pTask;
709 pTask->pRangeLock = NULL;
713 PPDMACFILERANGELOCK pRangeLock = (PPDMACFILERANGELOCK)RTMemCacheAlloc(pAioMgr->hMemCacheRangeLocks);
714 if (!pRangeLock)
718 pRangeLock->Core.Key = offStart;
719 pRangeLock->Core.KeyLast = offStart + cbRange - 1;
720 pRangeLock->cRefs = 1;
721 pRangeLock->fReadLock = pTask->enmTransferType == PDMACTASKFILETRANSFER_READ;
722 pRangeLock->pWaitingTasksHead = NULL;
723 pRangeLock->pWaitingTasksTail = NULL;
725 bool fInserted = RTAvlrFileOffsetInsert(pEndpoint->AioMgr.pTreeRangesLocked, &pRangeLock->Core);
729 pTask->pRangeLock = pRangeLock;
737 PPDMACFILERANGELOCK pRangeLock)
741 LogFlowFunc(("pAioMgr=%#p pEndpoint=%#p pRangeLock=%#p\n",
742 pAioMgr, pEndpoint, pRangeLock));
744 /* pRangeLock can be NULL if there was no lock assigned with the task. */
745 if (!pRangeLock)
748 Assert(pRangeLock->cRefs == 1);
750 RTAvlrFileOffsetRemove(pEndpoint->AioMgr.pTreeRangesLocked, pRangeLock->Core.Key);
751 pTasksWaitingHead = pRangeLock->pWaitingTasksHead;
752 pRangeLock->pWaitingTasksHead = NULL;
753 pRangeLock->pWaitingTasksTail = NULL;
754 RTMemCacheFree(pAioMgr->hMemCacheRangeLocks, pRangeLock);
1385 pTasksWaiting = pdmacFileAioMgrNormalRangeLockFree(pAioMgr, pEndpoint, pTask->pRangeLock);
1552 pTasksWaiting = pdmacFileAioMgrNormalRangeLockFree(pAioMgr, pEndpoint, pTask->pRangeLock);