Index: /trunk/src/VBox/VMM/PDMAsyncCompletionFileCache.cpp
===================================================================
--- /trunk/src/VBox/VMM/PDMAsyncCompletionFileCache.cpp	(revision 24707)
+++ /trunk/src/VBox/VMM/PDMAsyncCompletionFileCache.cpp	(revision 24708)
@@ -312,8 +312,15 @@
                     {
                         PPDMACFILECACHEENTRY pFree = pGhostListDst->pTail;
+                        PPDMACFILEENDPOINTCACHE pEndpointCacheFree = &pFree->pEndpoint->DataCache;
+
+                        RTSemRWRequestWrite(pEndpointCacheFree->SemRWEntries, RT_INDEFINITE_WAIT);
+
                         pdmacFileCacheEntryRemoveFromList(pFree);
+
                         STAM_PROFILE_ADV_START(&pCache->StatTreeRemove, Cache);
-                        RTAvlrFileOffsetRemove(pCurr->pEndpoint->DataCache.pTree, pFree->Core.Key);
+                        RTAvlrFileOffsetRemove(pEndpointCacheFree->pTree, pFree->Core.Key);
                         STAM_PROFILE_ADV_STOP(&pCache->StatTreeRemove, Cache);
+
+                        RTSemRWReleaseWrite(pEndpointCacheFree->SemRWEntries);
                         RTMemFree(pFree);
                     }
