lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] about memory problem


From: yueyue papa
Subject: [lwip-users] about memory problem
Date: Thu, 17 Jul 2008 14:34:18 +0800

Hi All,

I meet the out of memory problem

##################################################
Assertion "mem_malloc2(): return NULL!" failed at line 555 in
...\lwip_related\lwip\src\core\mem.c
251277:assert_mine.c,14,ASSERT,FN=...\lwip_related\lwip\src\core\mem.c,LN=555,VL=0
###################################################

I think the out of memory is caused the memory fragment. In my unit
test, it won't meet any problem, just happened in true environement.


I tried to enable MEM_USE_POOLS macro, but meet the compiler error.
There related code is too skillful. I unable to find the problem now.

################################
#ifndef MEM_USE_POOLS
#define MEM_USE_POOLS                   1
#endif
##################################

########################## memp.h##################
#if MEM_USE_POOLS
/* Use a helper type to get the start and end of the user "memory
pools" for mem_malloc */
typedef enum {
    /* Get the first (via:
       MEMP_POOL_HELPER_START = ((u8_t) 1*MEMP_POOL_A + 0*MEMP_POOL_B
+ 0*MEMP_POOL_C + 0)*/
    MEMP_POOL_HELPER_FIRST = ((u8_t)
#define LWIP_MEMPOOL(name,num,size,desc)
#define LWIP_MALLOC_MEMPOOL_START 1
#define LWIP_MALLOC_MEMPOOL(num, size) * MEMP_POOL_##size + 0
#define LWIP_MALLOC_MEMPOOL_END
#include "lwip/memp_std.h"
    ) ,                             <<<======compiler report here is the problem
    /* Get the last (via:
       MEMP_POOL_HELPER_END = ((u8_t) 0 + MEMP_POOL_A*0 +
MEMP_POOL_B*0 + MEMP_POOL_C*1) */
    MEMP_POOL_HELPER_LAST = ((u8_t)
#define LWIP_MEMPOOL(name,num,size,desc)
#define LWIP_MALLOC_MEMPOOL_START
#define LWIP_MALLOC_MEMPOOL(num, size) 0 + MEMP_POOL_##size *
#define LWIP_MALLOC_MEMPOOL_END 1
#include "lwip/memp_std.h"
    )
} memp_pool_helper_t;
####################################################

Is there any one using MEM_USE_POOLS configuration? Is the default
feature working?

or where should I make change.

Lee




reply via email to

[Prev in Thread] Current Thread [Next in Thread]