pmem->next = mem->next;
((struct mem *)&ram[mem->next])->prev = (u8_t *)pmem - ram;
}
-
}
+
void
mem_init(void)
{
lwip_stats.mem.avail = MEM_SIZE;
#endif /* MEM_STATS */
}
+
void
mem_free(void *rmem)
{
plug_holes(mem);
sys_sem_signal(mem_sem);
}
-void *
-mem_reallocm(void *rmem, mem_size_t newsize)
-{
- void *nmem;
- nmem = mem_malloc(newsize);
- if (nmem == NULL) {
- return mem_realloc(rmem, newsize);
- }
- memcpy(nmem, rmem, newsize);
- mem_free(rmem);
- return nmem;
-}
void *
mem_realloc(void *rmem, mem_size_t newsize)
sys_sem_signal(mem_sem);
return rmem;
}
+
void *
mem_malloc(mem_size_t size)
{
lwip_stats.mem.used += (size + SIZEOF_STRUCT_MEM);
/* if (lwip_stats.mem.max < lwip_stats.mem.used) {
lwip_stats.mem.max = lwip_stats.mem.used;
- } */
+ } */
if (lwip_stats.mem.max < ptr2) {
lwip_stats.mem.max = ptr2;
}
#endif /* MEM_STATS */
if (mem == lfree) {
- /* Find next free block after mem */
+ /* Find next free block after mem */
while (lfree->used && lfree != ram_end) {
- lfree = (struct mem *)&ram[lfree->next];
+ lfree = (struct mem *)&ram[lfree->next];
}
LWIP_ASSERT("mem_malloc: !lfree->used", !lfree->used);
}
void *mem_malloc(mem_size_t size);
void mem_free(void *mem);
void *mem_realloc(void *mem, mem_size_t size);
-void *mem_reallocm(void *mem, mem_size_t size);
#ifndef MEM_ALIGN_SIZE
#define MEM_ALIGN_SIZE(size) (((size) + MEM_ALIGNMENT - 1) & ~(MEM_ALIGNMENT-1))