Thunderbird:Testing:Get A Debug Thunderbird Hang Stack: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(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...')
 
No edit summary
Line 1: Line 1:
'''Only use this with debug Thunderbird, which produces valid debug symbols.'''
<small>[[Thunderbird:Testing|<< Back to Thunderbird Testing]]</small>
 
= How to get a debug Thunderbird hang stack using gdb =


(from [https://bugzilla.mozilla.org/show_bug.cgi?id=494849#c3 bug 494849 comment 3], tested in Leopard 10.5)
(from [https://bugzilla.mozilla.org/show_bug.cgi?id=494849#c3 bug 494849 comment 3], tested in Leopard 10.5)


How to get a hang stack using gdb:
'''Only use this with debug Thunderbird, which produces valid debug symbols.'''


If you are running debug Thunderbird, either clicking Sample Process in activity
If you are running debug Thunderbird, either clicking Sample Process in activity

Revision as of 09:16, 26 May 2009

<< Back to Thunderbird Testing

How to get a debug Thunderbird hang stack using gdb

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

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

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.