Lines Matching defs:elt
87 slab_free_orphaned(struct slab_element_header *elt)
91 assert(elt->owner & 1);
93 page = (struct slab_page_header *)(elt->owner & ~(intptr_t)1);
153 struct slab_element_header *elt = slab_get_element(pool->parent, page, i);
154 p_atomic_set(&elt->owner, (intptr_t)page | 1);
159 struct slab_element_header *elt = pool->migrated;
160 pool->migrated = elt->next;
161 slab_free_orphaned(elt);
167 struct slab_element_header *elt = pool->free;
168 pool->free = elt->next;
169 slab_free_orphaned(elt);
186 struct slab_element_header *elt = slab_get_element(pool->parent, page, i);
187 elt->owner = (intptr_t)pool;
188 assert(!(elt->owner & 1));
190 elt->next = pool->free;
191 pool->free = elt;
192 SET_MAGIC(elt, SLAB_MAGIC_FREE);
209 struct slab_element_header *elt;
225 elt = pool->free;
226 pool->free = elt->next;
228 CHECK_MAGIC(elt, SLAB_MAGIC_FREE);
229 SET_MAGIC(elt, SLAB_MAGIC_ALLOCATED);
231 return &elt[1];
257 struct slab_element_header *elt = ((struct slab_element_header*)ptr - 1);
260 CHECK_MAGIC(elt, SLAB_MAGIC_ALLOCATED);
261 SET_MAGIC(elt, SLAB_MAGIC_FREE);
263 if (p_atomic_read(&elt->owner) == (intptr_t)pool) {
267 elt->next = pool->free;
268 pool->free = elt;
276 /* Note: we _must_ re-read elt->owner here because the owning child pool
279 owner_int = p_atomic_read(&elt->owner);
283 elt->next = owner->migrated;
284 owner->migrated = elt;
291 slab_free_orphaned(elt);