[Mono-list] Addresses marked as ??? in Valgrind stack trace
Kerrick Staley
mail at kerrickstaley.com
Sat Oct 13 03:24:42 UTC 2012
Miraculously, just as all hope seemed lost, I discovered that
ahead-of-time indeed causes a crash, but before the crash a shared
object file is written containing the compiled code. The presence of
this shared object file apparently causes function call information to
appear in stacktraces (when using just-in-time).
Here's a question more for the Mono people: before any of these
crashes, I get some errors in Valgrind, all of them with the same
message:
==27672== Conditional jump or move depends on uninitialised value(s)
==27672== at 0x81D736F: conservatively_pin_objects_from (sgen-gc.c:2036)
In GDB, this is the first frame of the corresponding backtrace:
#0 0x081d736f in conservatively_pin_objects_from (start=0xbec83a20,
end=<value optimized out>, start_nursery=0x4800000,
end_nursery=0x4c00000, pin_type=0) at sgen-gc.c:2036
This message is printed 4 times: twice for line 2016, and twice for
line 2036 (all at different instruction addresses). All errors are
apparently from the same invocation (same arguments). The code is
here:
https://github.com/mono/mono/blob/mono-2-10-9/mono/metadata/sgen-gc.c#L2016
I've been assuming that this isn't a bug but rather is is the result
of an omission in Mono's Valgrind suppression file. I'm not entirely
sure, though; could this error ultimately be causing the crash?
Also, thanks Phillippe for the info about --vgdb-error=0; I tried it
and it worked, but I haven't had a chance to delve into the additional
functionality vgdb provides.
- Kerrick
More information about the Mono-list
mailing list