Bug using pvPortMalloc
Hello,
we have ported FreeRTOS on the ADUC7026 Microcontroller and have sucessfully used pvPortMalloc from Heap_2.c for many purpose.
But since we try to allocate memory for a certain Datastructure, it works correctly with the Keil simulator but abort when testing on the Ucontroller.
Here is the datastructure.
/*********************************************/
typedef struct txmsg {
struct txmsg *next; /* Next in linked list. */
ABCSP_TXMSG *m; /* The message (reference) itself. */
unsigned chan:4; /* BCSP channel. */
unsigned seq:3; /* Sequence number. */
} TXMSG;
/*******************
And here the code using that datastructure * ********************/
void testCalloc(void){
TXMSG * m;
m = ( TXMSG * ) malloc ( sizeof ( TXMSG ) );
if ( m ==(( TXMSG * ) NULL ) ) /*Panic*/ ;
else {
m->chan=0;
}
}
/********** End of the code ******************/
We stepped with the Keil Debugger on the Heap_2.c
pvPortMalloc code and found that the System allways abort when trying to call:
/* Insert the new block into the list of free blocks. */
prvInsertBlockIntoFreeList( ( pxNewBlockLink ) );
Please have even had a such problem ? Or do you have any solution for this?
Thank you in advance.
Emeric
Bug using pvPortMalloc
Do you have portBYTE_ALLIGNMENT set correctly?
Bug using pvPortMalloc
portBYTE_ALIGNMENT is set to 4.
Emeric