On Thu, 2012-10-04 at 13:19 -0500, Kerrick Staley wrote:

> I can't track down the error since the stack trace doesn't indicate
> which shared object and function it occurs in.
> 
> According to http://valgrind.org/docs/manual/faq.html#faq.unhelpful,
> if a shared object is unloaded before the program terminates, ???
> entries will appear in the stack trace, so I'm guessing that Mono is
> dynamically unloading the shared object after the segfault. I'm unsure
> as to whether this hunch even makes sense, though. Is there anything I
> can do on either the Valgrind or the Mono side to get more information
> from the stack trace?
To my knowledge, ??? can only appear for stacktraces which are 
produced after the object is unloaded (e.g. for stacktraces for leaks).
Your stacktraces are for errors which are reported directly.
I suppose that a shared object is not unloaded while it is being
executed (i.e. is on the call stack) as this would not behave properly
I guess.

I know close to 0 about C# but IIUC, C# is typically run in by in a
JITted environment.
If that is effectively the case, have you given 
the argument --smc-check=all (or =all-non-file) ?
One of these two is for sure mandatory in a JITted env (on x86/amd64
at least).

Otherwise, you might always try using gdb/vgdb to connect to the process
under Valgrind when the error is raised : gdb might maybe help
to see what is going on.

Philippe



------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to