The first one (((free_stack->size)) > ((0))" (0x0, 0x0)) looks like
asan could not find the stack trace where the first free() happened.
The second one ("((id)) != (0)" (0x0, 0x0)) is something similar --
asan fails to find the allocation stack trace.
In either case this looks like some bug in asan, or maybe a memory
corruption that asan has missed (it is possible if e.g. you have
uninstrumented code).
Hard to tell more w/o reproducer.On Wed, Aug 6, 2014 at 12:40 PM, ji wang <[email protected]> wrote: > Hi, kcc > Thanks,again haha:) > I just simple want to know what thoes errors means, so I can correct it , as > to my GCC and asan runtime lib was compiled by myself base on Gcc4.9 source > code maybe something went wrong.I think those not right print, may happen on > muti-thread program? Or any other advices? > And PS, Those occurs on my Android device, I've mentioned in other > posts,Using asan enable GCC android toolchain to test libstagefright.so on > my android device, push this recompiled lib and then run monkey test, got > errors like above. > > > 在 2014年8月6日星期三UTC+8下午2时15分03秒,kcc写道: >> >> Do you have a reproducer? >> >> On Wed, Aug 6, 2014 at 6:04 AM, ji wang <[email protected]> wrote: >> > First: Double Free >> > ================================================================= >> > ==2415==ERROR: AddressSanitizer: attempting double-free on 0xb4c28b20 in >> > thread T16777215: >> > ==2415==AddressSanitizer CHECK failed: >> > ../../../.././../gcc/gcc-4.9/libsanitizer/asan/asan_report.cc:586 >> > "((free_stack->size)) > ((0))" (0x0, 0x0) >> > #0 0xb67af94f (/system/lib/libasan.so.1+0x3f94f) >> > #1 0xb67b2f8b (/system/lib/libasan.so.1+0x42f8b) >> > #2 0xb67ae137 (/system/lib/libasan.so.1+0x3e137 >> > ... >> > ... ... >> > According to the asan code, free_stack maybe should not be empty, >> > should >> > print something like “freed by thread T0 here:... ...previously >> > allocated by >> > thread T0 here:... ..." >> > And of cource It's important, for what reason we may lose this part >> > log >> > print or somethine went wrong on my asan? >> > >> > Second: UseAfterFree >> > ================================================================= >> > ==4782==ERROR: AddressSanitizer: heap-use-after-free on address >> > 0xadb64ff7 >> > at pc 0xb5916e87 bp 0xb09ff8bc sp 0xb09ff8b4 >> > WRITE of size 1 at 0xadb64ff7 thread T16777215 >> > #0 0xb5916e85 (/system/lib/libstagefright.so+0x12ce85) >> > #1 0xb59185b3 (/system/lib/libstagefright.so+0x12e5b3) >> > ... >> > >> > 0xadb64ff7 is located 7 bytes inside of 8-byte region >> > [0xadb64ff0,0xadb64ff8) >> > ==4782==AddressSanitizer CHECK failed: >> > ../../../.././../gcc/gcc-4.9/libsanitizer/asan/asan_allocator2.cc:234 >> > "((id)) != (0)" (0x0, 0x0) >> > #0 0xb65cd94f (/system/lib/libasan.so.1+0x3f94f) >> > #1 0xb65d0f8b (/system/lib/libasan.so.1+0x42f8b) >> > #2 0xb65a2637 (/system/lib/libasan.so.1+0x14637) >> > ... >> > #6 0xb58ff04f (/system/lib/libstagefright.so+0x12c04f) >> > #7 0xb59273d3 (/system/lib/libstagefright.so+0x1543d3) >> > This one is the "CHECK(id);" error, what this id for? And more, the >> > stack printed first and second which I maked red colour is the same, >> > this is >> > werid, why? >> > >> > -- >> > You received this message because you are subscribed to the Google >> > Groups >> > "address-sanitizer" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> > an >> > email to [email protected]. >> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "address-sanitizer" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "address-sanitizer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
