I am running this code:
void testMem(void *pvParameters)
unsigned char * mem;
for (int v = 0; v < 100000; v++)
for (int i = 1900; i < 2500; i++)
mem = (unsigned char *) pvPortMalloc((i) * sizeof(unsigned char));
if (NULL == mem)
// set breakpoint here
and after a while the mem becomes null and breakpoint is hitted. This code is running on CortexM3, LM3S8962 copiled by gcc or IAR and freeRTOS 5.4.2. Memory is configTOTAL_HEAP_SIZE ( ( size_t ) ( 32768 ) ).
This is a school problem example but I have discovered it in the real situation during receiving ethernet packets.
Have anyone the same problem?