Commit Graph

70 Commits

Author SHA1 Message Date
Chris Manchester
974220b68a Bug 1216681 - Add a windows version of fileid to extract a guid from windows binaries. r=jimm,ted
This patch introduces a small utility program to extract a guid from a shared library
or executable on windows to identify the correct symbol file to read in fix_stack_using_bpsyms.py.
In order for this to work correctly on windows, the library name provided by
MozDescribeCodeAddress needs to be a full path, so the LoadedImageName field
from the IMAGEHLP_MODULE64 structure is used here instead of the ModuleName
field.

MozReview-Commit-ID: 8zkfLWjKVs2
2015-10-29 13:25:03 -07:00
Phil Ringnalda
31ae68b940 Back out ff446e81eaf5 (bug 1216681) for Linux PGO bustage
CLOSED TREE
2016-02-11 20:27:36 -08:00
Chris Manchester
fb36aa7132 Bug 1216681 - Add a windows version of fileid to extract a guid from windows binaries. r=jimm,ted
This patch introduces a small utility program to extract a guid from a shared library
or executable on windows to identify the correct symbol file to read in fix_stack_using_bpsyms.py.
In order for this to work correctly on windows, the library name provided by
MozDescribeCodeAddress needs to be a full path, so the LoadedImageName field
from the IMAGEHLP_MODULE64 structure is used here instead of the ModuleName
field.
2015-10-29 13:25:03 -07:00
Chris Manchester
c7e21a76a0 Bug 1216681 - Add a fileid utility to extract the breakpad GUID from object files for identification in fix_stack_using_bpsyms. r=ted
fix_stack_using_bpsyms.py locates a .sym file based on file name only, not uuid or full path,
which causes a failure if a duplicate leaf file name is introduced. This patch introduces a
small utility program on mac and linux to extract a breakpad guid from a shared library or
executable to identify the correct symbol file when this ambiguity occurs. A subsequent commit
implements this for windows.
2015-10-21 16:37:42 -07:00
Aidin Gharibnavaz
84f8bd04fe Bug 1190466 - tools/rb/find-leakers.pl re-written in Python r=mccr8 2015-08-20 14:18:20 -07:00
Nicholas Nethercote
ab64d9f1f6 Bug 1089441 - Update the refcount-balancer docs link. r=dbaron.
DONTBUILD because NPOTB.

--HG--
extra : rebase_source : 7e415ac8fd4f028f0cb56f9c5b3949a65a68849e
2014-11-13 14:02:21 -08:00
Nicholas Nethercote
add374fab0 Bug 1089441 - Move bloattable.pl and bloatdiff.pl into tools/bloatview/. r=dbaron.
DONTBUILD because NPOTB.

--HG--
rename : tools/rb/bloatdiff.pl => tools/bloatview/bloatdiff.pl
rename : tools/memory/bloattable.pl => tools/bloatview/bloattable.pl
extra : rebase_source : cc067b5c5db4b5975629d7ade384f964302f0ee4
2014-11-13 14:02:11 -08:00
L. David Baron
3819d9ab68 Bug 914253 patch 10 - Two more comment tweaks. No review.
DONTBUILD
2014-10-15 14:50:58 -07:00
Nicholas Nethercote
9f2fbe6429 Bug 1062709 (part 2, attempt 2) - Clean up stack printing and fixing. r=dbaron.
--HG--
extra : rebase_source : 626fd23a14ec90cfc9807c3d555169ec6463d19d
2014-09-01 22:56:05 -07:00
Ed Morley
a04d213094 Backed out changeset 7a1b7d7eba12 (bug 1062709) 2014-10-03 15:05:26 +01:00
Nicholas Nethercote
c2526cd82c Bug 1062709 (part 2) - Clean up stack printing and fixing. r=dbaron.
--HG--
extra : rebase_source : 18158d4474cb8826813a3866eba57b710e14db99
2014-09-01 22:56:05 -07:00
Nicholas Nethercote
bf5b09f2be Bug 1062689 - Run local mochitest and reftest output through fix_macosx_stack.py on Mac. r=ted. 2014-09-04 22:19:42 -07:00
Nicholas Nethercote
75c230aba2 Bug 1050601 - Remove fix-linux-stack.pl. r=ted.
--HG--
extra : rebase_source : f344aa5db9e16575835a7de3df34c311635c128b
2014-09-03 09:24:38 -07:00
L. David Baron
ef671dd818 Bug 914253 patch 10 - Revert inadvertent change from previous commit. No review. DONTBUILD 2014-08-06 19:23:54 -07:00
L. David Baron
b7b0b5b3f4 Bug 914253 patch 9 - Implement CRC checking for .gnu_debuglink section. No review.
This is needed to avoid regressions relative to the perl version because
the perl version failed, due to a missing /, to properly examine two of
the paths, one of which often yields the same filename as the original
file (but whose CRC will fail).

I've tested that this CRC calculation succeeds in cases where it should
succeed.

The observed CRC check failures (so far) on my Ubuntu 14.04 system are
the following links:
  /lib/x86_64-linux-gnu/libc.so.6 -> /lib/x86_64-linux-gnu/libc-2.19.so
  /lib/x86_64-linux-gnu/libpthread.so.0 -> /lib/x86_64-linux-gnu/libpthread-2.19.so
  /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 -> /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.23
  /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 -> /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.23
which succeed on a later possibility in /usr/lib/debug/.  But optimizing
to check f != file before checking the CRC wouldn't help because of the
naming differences due to symlinks, so I didn't bother.  If we ever want
to optimize away the time doing the CRC checks for these failures, we
could do so by checking if the files are the same path *after* resolving
symlinks.

DONTBUILD
2014-08-06 19:21:44 -07:00
L. David Baron
b9c74637c5 Bug 914253 patch 8 - Ignore useless results from addr2line and keep what we had before, like fix-linux-stack.pl does. No review.
DONTBUILD
2014-08-06 19:21:43 -07:00
L. David Baron
47ae436470 Bug 914253 patch 7 - Remove some debugging code and the remnants of the old address adjustment code. No review.
DONTBUILD
2014-08-06 19:21:43 -07:00
L. David Baron
bc0ec151a0 Bug 914253 patch 6 - Linux stacks are lowercase hexidecimal (although this was temporarily not true due to bug 939610, which is probably when mccr8 started fix_linux_stack.py). No review. 2014-08-06 15:52:49 -07:00
L. David Baron
14bddbcd3a Bug 914253 patch 5 - Implement caching of addr2line results, like bug 812070 did for fix-linux-stack.pl. No review. 2014-08-06 15:52:49 -07:00
L. David Baron
d403cb53e0 Bug 914253 patch 4 - Implement address adjustment for fix_linux_stack.py. No review. 2014-08-06 15:52:48 -07:00
L. David Baron
83038cddff Bug 914253 patch 3 - Implement separate debug info for fix_linux_stack.py, including the addition of support for .note.gnu.build-id sections that fix-linux-stack.pl did not support. No review. 2014-08-06 15:52:48 -07:00
L. David Baron
d15f09c668 Bug 914253 patch 2 - Pull opening comment from fix-linux-stack.pl. No review. 2014-08-06 15:52:48 -07:00
Andrew McCreight
ba89d2e233 Bug 914253 patch 1 - Initial version of fix_linux_stack.py, based on slightly old version of fix_macosx_stack.py. No review.
--HG--
rename : tools/rb/fix_macosx_stack.py => tools/rb/fix_linux_stack.py
2014-08-06 15:52:48 -07:00
L. David Baron
5e307581fa Bug 976350 patch 2: Rename nsTraceRefcntImpl to nsTraceRefcnt. r=bsmedberg
Now that bug 975295 removed the obsolete wrapper class, we can rename
nsTraceRefcntImpl back to its correct pre-XPCOM-glue name,
nsTraceRefcnt.

The best part is that the one place where indentation should have needed
fixing, nsTraceRefcnt::DemangleSymbol, never had its indentation fixed
for the previous renaming.

--HG--
rename : xpcom/base/nsTraceRefcntImpl.cpp => xpcom/base/nsTraceRefcnt.cpp
rename : xpcom/base/nsTraceRefcntImpl.h => xpcom/base/nsTraceRefcnt.h
2014-02-26 13:36:36 -08:00
L. David Baron
fbe4a24ac9 Back out changeset 72c0c955cf53 (no bug) now that bug 939610 is fixed. 2014-02-24 15:27:53 -08:00
L. David Baron
d3ea454fd4 Make fix-linux-stack handle addresses with lowercase hexidecimal, since that seems to be the thing these days. No bug.
(mrbkap, I, and ehoogeveen have all seen lowercase lately.)
2014-02-17 20:07:45 -08:00
Andrew McCreight
288339af41 Bug 967215 - Fix fix_macosx_stack.py. r=njn DONTBUILD 2014-02-06 11:31:49 -08:00
Andrew McCreight
bef1e65930 Bug 550335 - fix_macosx_stack for 64-bit. r=ted 2012-05-25 09:07:24 -07:00
Ted Mielczarek
ea2791d017 bug 751673 - fix Windows assertion stacks. r=dbaron
--HG--
extra : rebase_source : b74882bb3914afaa44341088b9f737c909e88f65
2013-03-11 14:21:53 -04:00
Nicholas Nethercote
4801426ad4 Bug 819833 (part 3) - Fix fix_macosx_stack.py.
--HG--
extra : rebase_source : edf2b21b1061c5b1aa31d071e24099ab8072d3f5
2012-12-10 21:24:55 -08:00
Nicholas Nethercote
b5d6a83387 Bug 819833 (part 2) - Remove fix-macosx-stack.pl because it's unused. r=ted.
--HG--
extra : rebase_source : 66c605bd2086b1a014fa361f7725536c135cdeb7
2012-12-10 21:19:18 -08:00
Nicholas Nethercote
a6628ddd7d Bug 812070 (part 2) - Speed up fix-linux-stack.pl by adding a cache for previously queried addresses.
--HG--
extra : rebase_source : 286ff300d8ef36ff136d0a55bcef2dcf43845b04
2012-11-15 14:38:24 -08:00
Nicholas Nethercote
f02120e33b Bug 812070 (part 1) - Merge %pipes and %address_adjustment in fix-linux-stack.pl.
--HG--
extra : rebase_source : db6a782a2e5df081d885b3eb72dcd19e7b196687
2012-11-15 14:38:21 -08:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Karl Tomlinson
eb1243ff38 b=647469 continue after crashes in addr2line r=dbaron
--HG--
extra : transplant_source : %3B%3D%1AX%09%D6N%5D%A2%3D%1F%23%2C%408%F7P%B46S
2011-05-02 08:33:16 +12:00
Benjamin Smedberg
e0d4b5721a Revert the accidental change to make-tree.pl from revision 116abfbc71e5 2010-07-15 10:40:17 -04:00
Benjamin Smedberg
a2833452f8 Merge mozilla-central to the bug 568691 branch.
--HG--
rename : gfx/public/nsITheme.h => gfx/src/nsITheme.h
2010-06-30 14:23:23 -04:00
Benjamin Smedberg
63c0077443 Merge mozilla-central into the branch for bug 568691, including fixup of the new jetpack binary module. 2010-06-25 19:41:09 -04:00
Benjamin Smedberg
774bb7e0e8 Free the component-location arrays at shutdown. 2010-06-25 17:27:10 -04:00
Karl Tomlinson
918b996817 temporarily dump some window state on mochitest time out to debug bug 569237 2010-06-23 11:14:24 +12:00
Jesse Ruderman
427777ed92 Bug 570287 - New stack fixer that uses breakpad symbol files. r=ted 2010-06-25 14:47:19 -07:00
Jesse Ruderman
f0d9ba9782 Revert d39bed41e215, because pty doesn't do the right thing when the process exits, creating a race condition
--HG--
extra : rebase_source : 8643b1ea88d52e76f93e66158373f479f41ccdd7
2010-06-08 20:55:43 -07:00
Karl Tomlinson
7e84937701 revert b8ddc4e35f65 to remove temporary logging 2010-06-24 15:59:10 +12:00
Jesse Ruderman
7be016503b Try to fix 10.6 debug perma-orange that results from fix_macosx_stack.py not dealing with atos's complaint about lack of symbols 2010-04-20 17:19:20 -07:00
Jesse Ruderman
009850e168 Fix bug 550388: avoid regexp perf issues in the stack fixer. r=dbaron 2010-03-20 23:08:47 -07:00
Jesse Ruderman
8dd58baaf8 Bug 539516 - Switch automation.py to use the new python stack fixer. r=ted
--HG--
rename : tools/rb/fix-macosx-stack.py => tools/rb/fix_macosx_stack.py
2010-02-21 13:03:20 -08:00
<Ms2ger@gmail.com>
b7aab23acf Bug 539274: Tab cleanup in aisle tools/rb/find-leakers.pl r=bsmedberg 2010-02-20 08:58:06 -05:00
Jesse Ruderman
f904d8b6bd Make fix-macosx-stack.py faster by caching atos processes, which requires tricking atos into giving us unbuffered output. (Bug 429963, r=dbaron) 2010-01-13 11:43:13 -08:00
Benjamin Smedberg
5b4cf2e3f8 Bug 538388 - Make find-leakers.pl work with the output of XPCOM_MEM_ALLOC_LOG as it dose with XPCOM_MEM_REFCNT_LOG, r=dbaron 2010-01-07 15:14:27 -05:00
L. David Baron
f60ea30cfa Fix typos. (Bug 429963) 2010-01-07 13:56:09 -05:00