Lines Matching defs:order

27  *  * bits 0..3  - order, which is log2 size of the block - 5: 2^(0+5) ... 2^(15+5) == 32B .. 1MB
32 * offset F order
62 DECLINLINE(HGSMIOFFSET) hgsmiMADescriptor(HGSMIOFFSET off, bool fFree, HGSMIOFFSET order)
66 (order & HGSMI_MA_DESC_ORDER_MASK);
116 HGSMIOFFSET order = HGSMIMASize2Order(cbBlock);
129 pBlock->descriptor = hgsmiMADescriptor(off, true, order);
158 HGSMIOFFSET order = HGSMI_MA_DESC_ORDER(pIter->descriptor);
159 RTListAppend(&pMA->aListFreeBlocks[order], &pIter->nodeFree);
208 static HGSMIMABLOCK *hgsmiMAGetFreeBlock(HGSMIMADATA *pMA, HGSMIOFFSET order)
213 for (i = order; i < RT_ELEMENTS(pMA->aListFreeBlocks); ++i)
229 /* 'i' is the order of the block. */
230 while (i != order)
241 /* Create 2 blocks with descreased order. */
272 * The new set will include the block with the required order.
273 * Since the required order is larger than any existing block,
292 HGSMIOFFSET order = HGSMIMASize2Order(u32BlockSize);
308 pBlock->descriptor = hgsmiMADescriptor(off, true, order);
310 RTListAppend(&pMA->aListFreeBlocks[order], &pBlock->nodeFree);
395 static void hgsmiMAMergeFreeBlocks(HGSMIMADATA *pMA, HGSMIOFFSET order)
397 /* Try to create a free block with the order from smaller free blocks. */
398 if (order == 0)
404 HGSMISIZE cbRequired = HGSMIMAOrder2Size(order);
414 HGSMIOFFSET i = order - 1;
433 hgsmiMAReformatFreeBlocks(pMA, order, pFreeStart, pFreeEnd, cbBlocks);
460 HGSMIOFFSET order = HGSMIPopCnt32(cb - 1) - HGSMI_MA_DESC_ORDER_BASE;
462 AssertReturn(HGSMIMAOrder2Size(order) >= cb, HGSMIOFFSET_VOID);
463 AssertReturn(order < RT_ELEMENTS(pMA->aListFreeBlocks), HGSMIOFFSET_VOID);
465 HGSMIMABLOCK *pBlock = hgsmiMAGetFreeBlock(pMA, order);
469 hgsmiMAMergeFreeBlocks(pMA, order);
470 pBlock = hgsmiMAGetFreeBlock(pMA, order);