Lines Matching refs:superblock

21   superblock.h
23 The superblock class controls a number of blocks (which are
45 class superblock {
47 // Construct a superblock for a given size class and set the heap
49 superblock(int numblocks, int sizeclass, hoardHeap *owner);
50 ~superblock(void) {}
52 // Make (allocate or re-use) a superblock for a given size class.
53 static superblock *makeSuperblock(int sizeclass, processHeap *pHeap);
55 // Find out who allocated this superblock.
58 // Set the superblock's owner.
61 // Get a block from the superblock.
64 // Put a block back in the superblock.
73 // What size class are blocks in this superblock?
76 // Insert this superblock before the next one.
77 inline void insertBefore(superblock *nextSb);
79 // Return the next pointer (to the next superblock in the list).
80 inline superblock *const getNext(void);
82 // Return the prev pointer (to the previous superblock in the list).
83 inline superblock *const getPrev(void);
85 // Compute the 'fullness' of this superblock.
88 // Return the 'fullness' of this superblock.
96 // Remove this superblock from its linked list.
99 // Is this superblock valid? (i.e.,
118 superblock(const superblock &);
119 const superblock & operator=(const superblock &);
128 const int _sizeClass; // The size class of blocks in the superblock.
129 const int _numBlocks; // The number of blocks in the superblock.
131 int _fullness; // How full is this superblock?
134 hoardHeap *_owner; // The heap who owns this superblock.
135 superblock *_next; // The next superblock in the list.
136 superblock *_prev; // The previous superblock in the list.
138 hoardLockType _upLock; // Lock this when moving a superblock to the global (process) heap.
141 // first block (which immediately follows the superblock).
147 superblock::getOwner(void)
156 superblock::setOwner(hoardHeap *o)
164 superblock::getBlock(void)
167 // Pop off a block from this superblock's freelist,
188 superblock::putBlock(block *b)
191 // Push a block onto the superblock's freelist.
203 superblock::getNumAvailable(void)
211 superblock::getNumBlocks(void)
219 superblock::getBlockSizeClass(void)
226 superblock * const
227 superblock::getNext(void)
233 superblock * const
234 superblock::getPrev(void)
242 superblock::insertBefore(superblock * nextSb)
245 // Insert this superblock before the next one (nextSb).
256 superblock::remove(void)
258 // Remove this superblock from a doubly-linked list.
270 superblock::isValid(void)
280 superblock::computeFullness(void)
289 superblock::getFullness(void)