Lines Matching refs:pSubHeap

106         PMMUKHEAPSUB pSubHeap = pHeap->pSubHeapHead;
107 pHeap->pSubHeapHead = pSubHeap->pNext;
108 SUPR3PageFreeEx(pSubHeap->pv, pSubHeap->cb >> PAGE_SHIFT);
109 //MMR3HeapFree(pSubHeap); - rely on the automatic cleanup.
214 PMMUKHEAPSUB pSubHeap = (PMMUKHEAPSUB)MMR3HeapAllocU(pHeap->pUVM, MM_TAG_MM/*_UK_HEAP*/, sizeof(*pSubHeap));
215 if (pSubHeap)
217 pSubHeap->cb = cbSubHeap;
218 int rc = SUPR3PageAllocEx(pSubHeap->cb >> PAGE_SHIFT, 0, &pSubHeap->pv, &pSubHeap->pvR0, NULL);
221 rc = RTHeapSimpleInit(&pSubHeap->hSimple, pSubHeap->pv, pSubHeap->cb);
224 pSubHeap->pNext = pHeap->pSubHeapHead;
225 pHeap->pSubHeapHead = pSubHeap;
226 return pSubHeap;
230 SUPR3PageFreeEx(pSubHeap->pv, pSubHeap->cb >> PAGE_SHIFT);
232 MMR3HeapFree(pSubHeap);
311 PMMUKHEAPSUB pSubHeap = pHeap->pSubHeapHead;
312 while (pSubHeap)
315 pv = RTHeapSimpleAllocZ(pSubHeap->hSimple, cb, MMUKHEAP_SIZE_ALIGNMENT);
317 pv = RTHeapSimpleAlloc(pSubHeap->hSimple, cb, MMUKHEAP_SIZE_ALIGNMENT);
323 pSubHeapPrev->pNext = pSubHeap->pNext;
324 pSubHeap->pNext = pHeap->pSubHeapHead;
325 pHeap->pSubHeapHead = pSubHeap;
329 pSubHeapPrev = pSubHeap;
330 pSubHeap = pSubHeap->pNext;
337 pSubHeap = mmR3UkHeapAddSubHeap(pHeap, RT_MAX(RT_ALIGN_Z(cb, PAGE_SIZE) + PAGE_SIZE * 16, _256K));
338 if (pSubHeap)
341 pv = RTHeapSimpleAllocZ(pSubHeap->hSimple, cb, MMUKHEAP_SIZE_ALIGNMENT);
343 pv = RTHeapSimpleAlloc(pSubHeap->hSimple, cb, MMUKHEAP_SIZE_ALIGNMENT);
361 size_t cbActual = RTHeapSimpleSize(pSubHeap->hSimple, pv);
369 *pR0Ptr = (uintptr_t)pv - (uintptr_t)pSubHeap->pv + pSubHeap->pvR0;
396 PMMUKHEAPSUB pSubHeap = pHeap->pSubHeapHead;
397 while (pSubHeap)
399 if ((uintptr_t)pv - (uintptr_t)pSubHeap->pv < pSubHeap->cb)
402 cbActual = RTHeapSimpleSize(pSubHeap->hSimple, pv);
414 RTHeapSimpleFree(pSubHeap->hSimple, pv);