Thunderbird:Testing:Get A Debug Thunderbird Hang Stack

Revision as of 09:14, 26 May 2009 by Nth10sd (talk | contribs) (Created page with ''''Only use this with debug Thunderbird, which produces valid debug symbols.''' (from [https://bugzilla.mozilla.org/show_bug.cgi?id=494849#c3 bug 494849 comment 3], tested in Le...')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Only use this with debug Thunderbird, which produces valid debug symbols.

(from bug 494849 comment 3, tested in Leopard 10.5)

How to get a hang stack using gdb:

If you are running debug Thunderbird, either clicking Sample Process in activity manager will get a sample, or follow the following instructions :

0) Change to the debug Thunderbird directory:

 cd /path/to/Thunderbird

1) Run Shredder:

 ./thunderbird-bin

And repeat steps to reproduce to get the hang.

2) At a Terminal prompt, find its process id:

 ps ax | grep thunderbird

(The pid will be listed in the first column to the left. Let's assume it's '123'.)

3) Attach to the Shredder process:

 gdb thunderbird-bin 123

4) Next, get a backtrace of all running TB threads:

 thread apply all bt

5) Finally, save the output to a text file and attach it to your bug report.

A sample all-thread backtrace

Credit Steven Michaud from bug 470001 comment 23 for the original instructions.