[Mono-list] mono debugger
Jonathan Gagnon
jonathan.gagnon at croesus.com
Fri May 2 15:44:05 EDT 2008
Hi,
I have a core dump of mono that I generated with gcore. I want to be able
to see the managed call stack of the diffrent threads. With the information
I got from here :
http://www.mono-project.com/Debugging
I thought I'd be able to see it with the mono_stack macro. Unfortunately,
it requires a running application and it doesn't work with a core dump (I
get the error message "You can't do that without a process to debug." from
gdb).
I then tried the mono debugger. According to the features list found here
(http://www.mono-project.com/Debugger), it is supposed to be able to examine
core dumps. Unfortunately, I can't find the documentation on how to do it
anywhere. The only thing I found out is that I can use the command "core
coreFileName" to load the core dump, but I get an exception when I do this.
Here is the exception I get :
(mdb) core ./core.27349
Loading core file ./core.27349
ERROR: Caught exception while executing command
Mono.Debugger.Frontend.DebuggerEngine: System.EntryPointNotFoundException:
mono_debugger_server_get_registers_from_core_file
at (wrapper managed-to-native)
CoreFileThread:mono_debugger_server_get_registers_from_core_file
(intptr,intptr)
at Mono.Debugger.Backend.CoreFile+CoreFileThread.read_registers ()
[0x00079] in /home/jonathang/trunk/debugger/backend/arch/CoreFile.cs:238
at Mono.Debugger.Backend.CoreFile+CoreFileThread..ctor
(Mono.Debugger.Backend.CoreFile core, Int32 pid) [0x00038] in
/home/jonathang/trunk/debugger/backend/arch/CoreFile.cs:217
at (wrapper remoting-invoke-with-check) CoreFileThread:.ctor
(Mono.Debugger.Backend.CoreFile,int)
at Mono.Debugger.Backend.CoreFile.read_note_section () [0x00053] in
/home/jonathang/trunk/debugger/backend/arch/CoreFile.cs:146
at Mono.Debugger.Backend.CoreFile..ctor
(Mono.Debugger.Backend.ThreadManager manager,
Mono.Debugger.Backend.ProcessStart start) [0x00077] in
/home/jonathang/trunk/debugger/backend/arch/CoreFile.cs:66
at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.CoreFile:.ctor
(Mono.Debugger.Backend.ThreadManager,Mono.Debugger.Backend.ProcessStart)
at Mono.Debugger.Backend.CoreFile.OpenCoreFile
(Mono.Debugger.Backend.ThreadManager manager,
Mono.Debugger.Backend.ProcessStart start) [0x00000] in
/home/jonathang/trunk/debugger/backend/arch/CoreFile.cs:21
at Mono.Debugger.Backend.ThreadManager.OpenCoreFile
(Mono.Debugger.Backend.ProcessStart start, Mono.Debugger.Thread[]& threads)
[0x00000] in /home/jonathang/trunk/debugger/backend/ThreadManager.cs:111
at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.ThreadManager:OpenCoreFile
(Mono.Debugger.Backend.ProcessStart,Mono.Debugger.Thread[]&)
at Mono.Debugger.Backend.DebuggerServant.OpenCoreFile
(Mono.Debugger.DebuggerSession session, System.String core_file,
Mono.Debugger.Thread[]& threads) [0x00020] in
/home/jonathang/trunk/debugger/backend/DebuggerServant.cs:169
at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.DebuggerServant:OpenCoreFile
(Mono.Debugger.DebuggerSession,string,Mono.Debugger.Thread[]&)
at Mono.Debugger.Debugger.OpenCoreFile (Mono.Debugger.DebuggerSession
session, System.String core_file, Mono.Debugger.Thread[]& threads) [0x00006]
in /home/jonathang/trunk/debugger/classes/Debugger.cs:153
at (wrapper remoting-invoke-with-check)
Mono.Debugger.Debugger:OpenCoreFile
(Mono.Debugger.DebuggerSession,string,Mono.Debugger.Thread[]&)
at Mono.Debugger.Frontend.Interpreter.OpenCoreFile (System.String
core_file) [0x00000]
at (wrapper remoting-invoke-with-check)
Mono.Debugger.Frontend.Interpreter:OpenCoreFile (string)
at Mono.Debugger.Frontend.OpenCoreFileCommand.DoExecute
(Mono.Debugger.Frontend.ScriptingContext context) [0x00000]
at Mono.Debugger.Frontend.DebuggerCommand.Execute
(Mono.Debugger.Frontend.ScriptingContext context) [0x00000]
at Mono.Debugger.Frontend.DebuggerCommand.Execute
(Mono.Debugger.Frontend.Engine e) [0x00000]
at Mono.Debugger.Frontend.Engine.Run (System.String s,
System.Collections.ArrayList args) [0x00000]
Is this supposed to work and if it is, how can I get it to work?
Otherwise, is there any other way that I could get the managed call stack of
the threads from a core dump?
Thanks,
Jonathan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-list/attachments/20080502/f251575c/attachment-0001.html
More information about the Mono-list
mailing list