I doubt “the faulting thread is pre-selected”. I find when attach the dump file, it is always the debugger thread itself displayed. Any comments?
Normally the failing thread is selected. How do you create the Dump? With adplus?
I tried IP2MD command, very useful, but the IP address input to IP2MD must be the IP (instruction pointer?) of the start address of a method? I tried that arbitrary address does not work for IP2MD command.
You don’t have to specify the start of the Method. Any pointer is valid as long as it is in valid JIT Range. Addresses containing no managed Code (or no code at all) will not work
From my further study, I think !threads will show exception which is last thrown even if it is handled (catched without re-throw out) by the thread, and also include the real fault thread which has unhandled exception which causes process crash?
Yes. It should also include the unhandled exception causing your process to die (if it’s a managed Exception).
GP
powered by Exchange 2007 - hosted by a Microsoft Gold Partner - visit us www.world-direct.at
I further question, are there any ways to know the related managed source code for a crash?address? Currently from your solution, I know which method causes crash, but since the method is long, will be great if I could fast find which line of source code causes such issue.
If my application is pure native application, how do you find related source code for a crash address?
regards,
George
----- Original Message ----
From: G?nter Prossliner To: Kernel Debugging Interest List Sent: Tuesday, March 3, 2009 5:13:39 PM Subject: AW: [windbg] help to send me “Windbg stack trace issue” discussion email?
Hello George,
1.
I doubt “the faulting thread is pre-selected”. I find when attach the dump file, it is always the debugger thread itself displayed. Any comments?
Normally the failing thread is selected. How do you create the Dump? With adplus?
2.
I tried IP2MD command, very useful, but the IP address input to IP2MD must be the IP (instruction pointer?) of the start address of a method? I tried that arbitrary address does not work for IP2MD command.
You don’t have to specify the start of the Method. Any pointer is valid as long as it is in valid JIT Range. Addresses containing no managed Code (or no code at all) will not work
3.
From my further study, I think !threads will show exception which is last thrown even if it is handled (catched without re-throw out) by the thread, and also include the real fault thread which has unhandled exception which causes process crash?
Yes. It should also include the unhandled exception causing your process to die (if it’s a managed Exception).
GP
powered by Exchange 2007 - hosted by a Microsoft Gold Partner - visit us www.world-direct.at