Close

usb-tiny-isp + avrdude v6.1-6.3 bug(?)

A project log for AVR Random Potentially-Obsure Potentially-Usefuls

Random potentially-obscure potentially-useful things related to AVRs

eric-hertzEric Hertz 08/14/2016 at 01:230 Comments

Reading an old project's chip for backup before repurposing the chip...

READING the flash into an ihex file: AVR-Dude crashes with:

*** Error in `avrdude': free(): invalid next size (normal): 0x09323798 ***
Aborted

The file is written and appears to be correct.

VERY LITTLE info 'round the web about this error-message...

I think, mostly, due to the fact that the message isn't coming from avrdude, but from glibc(?)... most OS's probably don't actually print-out an error-message when free() is given an invalid address.

Here's what I've found:

http://www.avrfreaks.net/forum/error-avrdude-free-invalid-next-size-normal-0x000000000112c720

https://bugs.launchpad.net/ubuntu/+source/avrdude/+bug/1400185

http://www.mikrocontroller.net/attachment/301320/avrdude_crash.txt

http://savannah.nongnu.org/bugs/?41292 (not a usb-tiny-isp)

Otherwise, search-fu is failing me...

Again, from what I can tell, I think this "bug" is probably more-existant than these results, but I don't know what to search for, because, again, most OS's probably don't even report an error, and the file *is* created, so basically it *looks* like the program's exitting normally.

I've done a tiny bit of debugging (within my skillset) and determined that my encounter with this error appears to occur within avrpart.c:

"avr_free_mem() -> m->buf = 0x9323798"

Can't imagine why there'd be a free() call in avrdude to an address it didn't malloc(), but that appears to be what's happening

(or maybe it was already freed?)

As it stands, since I have an FT2232H-based programmer, I'll probably be using that, for now.

There's a new bug-submission, let's see what they've got to say :)

https://savannah.nongnu.org/bugs/index.php?48776

Discussions