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

Assertion in malloc.c for 4.7.99.2



Joel Sherrill wrote:
> My guess is that this indicates that an address is being freed
> that doesn't match the one allocated.

Cheers. That helped.

Adding debug output to free and malloc showed exactly that. The
erroneous free is occurring in rtems_disk_io_done(). It's freeing a 256
byte block of memory then calling free with the previously freed address
+ 8 - oops!

The reason why it got there because I hadn't configured
CONFIGURE_MAXIMUM_MESSAGE_QUEUES and things were being tidied up.

I'll see if I can deduce why it's freeing memory that it didn't allocate

-- 
Paul