Lines Matching refs:desc

78 #define LWIP_MEMPOOL(name,num,size,desc) LWIP_MEMPOOL_DECLARE(name,num,size,desc)
82 #define LWIP_MEMPOOL(name,num,size,desc) &memp_ ## name,
101 memp_sanity(const struct memp_desc *desc)
105 t = *desc->tab;
125 * @param desc the pool p comes from
128 memp_overflow_check_element(struct memp *p, const struct memp_desc *desc)
130 mem_overflow_check_raw((u8_t *)p + MEMP_SIZE, desc->size, "pool ", desc->desc);
137 memp_overflow_init_element(struct memp *p, const struct memp_desc *desc)
139 mem_overflow_init_raw((u8_t *)p + MEMP_SIZE, desc->size);
172 * @param desc pool to initialize
175 memp_init_pool(const struct memp_desc *desc)
178 LWIP_UNUSED_ARG(desc);
183 *desc->tab = NULL;
184 memp = (struct memp *)LWIP_MEM_ALIGN(desc->base);
187 memset(memp, 0, (size_t)desc->num * (MEMP_SIZE + desc->size
194 for (i = 0; i < desc->num; ++i) {
195 memp->next = *desc->tab;
196 *desc->tab = memp;
198 memp_overflow_init_element(memp, desc);
201 memp = (struct memp *)(void *)((u8_t *)memp + MEMP_SIZE + desc->size
208 desc->stats->avail = desc->num;
213 desc->stats->name = desc->desc;
245 do_memp_malloc_pool(const struct memp_desc *desc)
247 do_memp_malloc_pool_fn(const struct memp_desc *desc, const char *file, const int line)
254 memp = (struct memp *)mem_malloc(MEMP_SIZE + MEMP_ALIGN_SIZE(desc->size));
259 memp = *desc->tab;
265 memp_overflow_check_element(memp, desc);
268 *desc->tab = memp->next;
277 memp_overflow_init_element(memp, desc);
283 desc->stats->used++;
284 if (desc->stats->used > desc->stats->max) {
285 desc->stats->max = desc->stats->used;
293 desc->stats->err++;
296 LWIP_DEBUGF(MEMP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("memp_malloc: out of memory in pool %s\n", desc->desc));
305 * @param desc the pool to get an element from
311 memp_malloc_pool(const struct memp_desc *desc)
313 memp_malloc_pool_fn(const struct memp_desc *desc, const char *file, const int line)
316 LWIP_ASSERT("invalid pool desc", desc != NULL);
317 if (desc == NULL) {
322 return do_memp_malloc_pool(desc);
324 return do_memp_malloc_pool_fn(desc, file, line);
359 do_memp_free_pool(const struct memp_desc *desc, void *mem)
373 memp_overflow_check_element(memp, desc);
377 desc->stats->used--;
381 LWIP_UNUSED_ARG(desc);
385 memp->next = *desc->tab;
386 *desc->tab = memp;
389 LWIP_ASSERT("memp sanity", memp_sanity(desc));
399 * @param desc the pool where to put mem
403 memp_free_pool(const struct memp_desc *desc, void *mem)
405 LWIP_ASSERT("invalid pool desc", desc != NULL);
406 if ((desc == NULL) || (mem == NULL)) {
410 do_memp_free_pool(desc, mem);