Re: Shark failing to get entire stack
Mike Shaver <[email protected]> Sat, 13 Nov 2010 13:32:58 -0800
| Newsgroups | gmane.comp.mozilla.performance |
|---|---|
| Message-ID | <[email protected]> |
On Sat, Nov 13, 2010 at 1:24 PM, Jonathan Watt <[email protected]> wrote: > Last time I tried this sort of stuff on Windows I seem to remember that t= he > symbol and source servers allowed me to get full stacks when running rele= ase > builds. Maybe this isn't currently possible on Mac? But doesn't crash rep= orter > somehow figure out full stacks for mac crash reports? The debugger can do it, profilers generally can't because the work involved in correctly sampling the return addresses is much too high for their sampling rates. Profilers also can't do it on Windows, generally. You could just break in gdb and look at the stack that way, though, as poor man's profiling. Given the very high proportion of CPU that's there, I suspect it wouldn't take too make interrupts to figure out what you want. > 0.0% =A0 0.1% =A0 Unknown Library =A00x102153000 [unknown] > 0.1% =A0 0.1% =A0 XUL =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0nsDisplayItem::Recom= puteVisibility > 0.0% =A0 0.0% =A0 XUL =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0mozilla::FrameLa= yerBuilder::DrawThebesLayer > 0.0% =A0 0.0% =A0 XUL =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0nsRegion::Se= tToElements(unsigned int) I don't remember off-hand how to tell what library is loaded at that address, but if symbolicating with the downloaded symbols doesn't work, then I'm not sure there's much you can do other than disassemble and poke with a debugger to see what's at that code address. Mike