[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-users] memp_malloc: out of memory in pool
From: |
Ran Shalit |
Subject: |
[lwip-users] memp_malloc: out of memory in pool |
Date: |
Wed, 20 Sep 2017 19:17:44 +0300 |
Hello,
I am trying to port lwip to uc/os (I use lwip 1.4.1).
But I get on packet recieve, immediately at first try "out of memory
in pool " error as following:
"
pbuf_alloc(length= 96)
memp_malloc: out of memory in pool PBUF_POOL
pbuf_alloc: allocated pbuf 0"
I observed memp_malloc(memp_t) routine but not sure I undetsand how it
works, and why it fails.
What reason could be for memp = memp_tab[type]; returning null ?
Is memp_tab allocated static at compile time ? Does it mean some
configuration parameter is wrong (lwipopts.h) ?
memp_malloc(memp_t type)
{
struct memp *memp;
SYS_ARCH_DECL_PROTECT(old_level);
LWIP_ERROR("memp_malloc: type < MEMP_MAX", (type < MEMP_MAX), return NULL;);
SYS_ARCH_PROTECT(old_level);
#if MEMP_OVERFLOW_CHECK >= 2
memp_overflow_check_all();
#endif /* MEMP_OVERFLOW_CHECK >= 2 */
memp = memp_tab[type];
if (memp != NULL) {
....
} else {
LWIP_DEBUGF(MEMP_DEBUG | LWIP_DBG_LEVEL_SERIOUS, ("memp_malloc:
out of memory in pool %s\n", memp_desc[type]));
MEMP_STATS_INC(err, type);
}
Best Regards,
Ran
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lwip-users] memp_malloc: out of memory in pool,
Ran Shalit <=