Commit Graph

230 Commits

Author SHA1 Message Date
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Nicholas Nethercote
2cd647cdbe Bug 1181445 (part 2) - Use nsTHashTable::Iterator in nsMemoryReporterManager. r=froydnj. 2015-07-08 22:32:39 -07:00
Jed Davis
92f69b3201 Bug 1154053 - Limit concurrency of e10s memory reporting. r=erahm
This changes the way nsMemoryReporterManger handles child processes;
instead of using an observer message and trying to keep a count of child
processes expected to answer, it directly iterates a copy of the list
of content processes and explicitly handles children which exit before
their reports start.

Note that GC/CC logs still run at full concurrency, and that no child
reports start until the parent is finished (see bug 1151597) regardless
of concurrency limit.
2015-05-06 20:51:00 +02:00
Phil Ringnalda
0f32185be8 Back out e05936099653 (bug 1154053) on suspicion of causing the hellish frequency of Android 2.3 robocop-2 crashes that resulted in this CLOSED TREE, a=bustage 2015-05-07 22:41:26 -07:00
Jed Davis
5b7451a823 Bug 1154053 - Limit concurrency of e10s memory reporting. r=erahm
This changes the way nsMemoryReporterManger handles child processes;
instead of using an observer message and trying to keep a count of child
processes expected to answer, it directly iterates a copy of the list
of content processes and explicitly handles children which exit before
their reports start.

Note that GC/CC logs still run at full concurrency, and that no child
reports start until the parent is finished (see bug 1151597) regardless
of concurrency limit.
2015-05-06 20:51:00 +02:00
Jed Davis
e32d410d6d Bug 1151597 - Step 2: Don't start child process memory reports until parent is finished. r=erahm 2015-04-27 15:46:00 -04:00
Jed Davis
f9cc33773b Bug 1151597 - Step 1: Change memory reporting IPC to send one report per message. r=erahm
Also fixes bug 1005154 -- since there's now a method for "end of report",
we might as well call it from ActorDestroy instead of Recv__delete__.
2015-04-27 15:45:00 -04:00
Jed Davis
2537c98bde Bug 1154041 - Enable child process memory report logging by default on B2G. r=erahm 2015-04-24 14:53:00 -04:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Nicholas Nethercote
e6e3bebf47 Bug 1145007 (part 2) - Add a "resident-peak" distinguished amount and memory reporter on Unix. r=erahm. 2015-03-19 15:16:37 -07:00
Nathan Froyd
c3c6b1facf Bug 1141689 - use services::GetObserverService more; r=ehsan 2014-04-29 13:31:06 -04:00
Nicholas Nethercote
437915e335 Bug 1138770 - Make memory reporters that have been stashed for testing eligible for unregistration. r=mccr8. 2015-03-02 18:55:42 -08:00
Nicholas Nethercote
385354dc84 Bug 1134030 - Add WindowsAddressSpaceReporter. code=njn,dmajor. r=dmajor,njn. 2015-02-20 13:13:16 +11:00
Daniel Holbert
458473d25b Bug 1125632 followup: Mark remaining CollectReports impls in nsMemoryReporterManager.cpp and SystemMemoryReporter.cpp as MOZ_OVERRIDE. 2015-01-27 09:48:54 -08:00
Daniel Holbert
5abd55b901 Bug 1125632: Annotate ResidentUniqueReporter::CollectReports as MOZ_OVERRIDE. r=njn 2015-01-25 15:14:00 -08:00
Nicholas Nethercote
175ee20d94 Bug 1121830 - DMD: add "num" property to blocks in the output. r=mccr8.
The new "num" property lets identical blocks be aggregated in the output. This
patch only uses the "num" property for dead blocks, because that's where the
greatest potential benefit lies, but it could be used for live blocks as well.

On one test case (a complex PDF file) running with --mode=cumulative
--sample-below=1 this patch had the following effects.

- Change in running speed was negligible.

- Compressed output file size dropped from 8.8 to 5.0 MB.

- Compressed output file size dropped from 297 to 50 MB.

- dmd.py runtime (without stack fixing) dropped from 30 to 8 seconds.
2015-01-15 20:38:38 -08:00
James Willcox
901bf2d8b1 bug 1118552 - fix gcc4.9 warnings on Android r=glandium 2015-01-06 22:20:46 -05:00
Ehsan Akhgari
ad34fcfc86 Bug 1117035 - Mark virtual overridden functions as MOZ_OVERRIDE in XPCOM; r=froydnj 2015-01-05 11:25:41 -05:00
Nicholas Nethercote
4beda4eda0 Bug 1094552 (part 6) - DMD: add support for cumulative heap profiling. r=mccr8.
By adding a new "cumulative" mode.
2014-10-30 20:22:47 -07:00
Nicholas Nethercote
d71b83ac3e Bug 1094552 (part 3) - DMD: rename |Block| as |LiveBlock|. r=mccr8.
This is to give better contrast with |DeadBlock|, which will be added in the
next patch.
2014-11-18 18:57:20 -08:00
Nicholas Nethercote
eb3cf6cee1 Bug 1061024 (part 2) - Some minor DMD clean-ups. r=jld. 2014-08-31 22:35:28 -07:00
Nicholas Nethercote
a82b27fa7c Bug 1061024 (part 1) - Don't run DMD when about:memory's "Measure" button is pressed. r=jld. 2014-08-31 20:36:26 -07:00
Birunthan Mohanathas
6e9ec233ed Bug 1046841 - Fix more style violations in previously touched .cpp files in xpcom/. r=froydnj 2014-08-25 12:17:15 -07:00
Ehsan Akhgari
f6d049aa7f Bug 1048239 - Fix more bad implicit constructors in XPCOM; r=froydnj 2014-08-05 09:36:32 -04:00
Eric Rahm
bbd3ec655d Bug 1027921 - Part 9: Add DeadlockDetector memory reporter. r=njn, r=froydnj 2014-08-04 16:20:37 -07:00
Nicholas Nethercote
d8d1d82534 Bug 1046477 (part 1) - Separate the reporting of the main and static atoms tables. r=froydnj. 2014-07-30 23:06:57 -07:00
Daniel Holbert
dc7508ea87 Bug 1045110 - Add parens around assignment in "while" condition, to silence GCC Wparentheses warning. r=njn 2014-07-28 17:09:00 +02:00
Jan Keromnes
5301eeb172 Bug 1035396 - Make Linux USS reporting 2x faster. r=nbp,njn 2014-07-21 18:23:49 -07:00
Jan Beich
01d7c53691 Bug 1035747 - Fix dangerous public destructors specific to FreeBSD. r=bjacob 2014-07-08 05:21:00 +02:00
Benoit Jacob
352e9344b9 Bug 1028588 - Fix more, recently introduced dangerous public destructors - r=ehsan 2014-07-05 16:35:35 -04:00
Jed Davis
6e8a5648a5 Bug 956961 - Open content processes' DMD log files in the parent process. r=njn 2014-07-02 15:59:02 -07:00
Wes Kocher
ee0e027491 Backed out 3 changesets (bug 956961) for non-unified build bustage
Backed out changeset f1be89cb58b9 (bug 956961)
Backed out changeset 272b01e4f856 (bug 956961)
Backed out changeset 56907af18c66 (bug 956961)
2014-07-02 15:03:29 -07:00
Jed Davis
3e4ac648bb Bug 956961 - Open content processes' DMD log files in the parent process. r=njn 2014-07-02 11:27:48 -07:00
Benoit Jacob
fcd3b40972 Bug 1028588 - Fix dangerous public destructors in xpcom/ - r=bsmedberg,khuey,nfroyd 2014-06-30 18:11:53 -04:00
Wes Kocher
8d34dc1b3b Backed out 4 changesets (bug 1028588) for build bustage
Backed out changeset 13a8bae671ca (bug 1028588)
Backed out changeset 19a19833f1d6 (bug 1028588)
Backed out changeset d5fae80054de (bug 1028588)
Backed out changeset 5942ad3859b8 (bug 1028588)
2014-06-30 15:50:19 -07:00
Benoit Jacob
6d0ba9e6eb Bug 1028588 - Fix dangerous public destructors in xpcom/ - r=bsmedberg,khuey,nfroyd 2014-06-30 18:11:53 -04:00
Nicholas Nethercote
7b107d5931 Bug 1010064 - Allow memory reports to be anonymized. r=bsmedberg. 2014-05-20 23:06:54 -07:00
Jan Keromnes
7eb6819c17 Bug 976024 - Track Unique Set Size in the Developer HUD. r=21, r=njn 2014-06-13 06:38:00 +02:00
Nicolas B. Pierron
b195d42434 Bug 1014071 - Add support for USS on Linux. r=BenWa,njn 2014-06-05 08:31:09 -07:00
Jan Beich
346fa84e89 Bug 1015497 - Enable FifoWatcher and its consumers on every Unix. r=froydn,jld 2014-05-29 05:24:00 +02:00
Eric Rahm
87ac050c65 Bug 1006769 - Part 1: Improve heap-overhead memory reporting. r=njn 2014-05-21 17:34:06 -07:00
Nicholas Nethercote
1897c16447 Bug 1014249 - Beef up the "is DMD enabled?" and "is DMD running?" checks. r=mccr8. 2014-05-22 19:45:14 -07:00
Birunthan Mohanathas
9c531b5b34 Bug 869836 - Part 6: Use EqualsLiteral instead of Equals where possible. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas
e44da12c54 Bug 995730 - Fix style violations in xpcom/base/. r=froydnj,continuation 2014-05-13 20:41:38 +03:00
Birunthan Mohanathas
34a78370e0 Bug 995730 - Change xpcom/base/ to use 2 space indentation
This also removes trailing whitespace in reindented files.
2014-05-05 20:30:39 +03:00
Birunthan Mohanathas
eeb9aaaa94 Bug 900908 - Part 3: Change uses of numbered macros in nsIClassInfoImpl.h/nsISupportsImpl.h to the variadic variants. r=froydnj 2014-04-27 03:06:00 -04:00
Eric Rahm
18c02847fa Bug 1000461 - Enable triggering memory report via fifo device on OS X. r=froydnj 2014-04-24 17:35:59 -07:00
Jed Davis
fce3339319 Bug 991791 - Fix some timing-dependent edge cases in nsMemoryReporterManager child handling. r=njn
The patch for bug 946407 changed the state space of
nsMemoryReporterManager in a subtle way: if we're using
MinimizeMemoryUsage with our report, then it's possible for all of
the child processes to finish (or for the timeout to expire) before
the parent has started reporting on itself.  This could cause us to
dereference a null pointer to the state struct in StartGettingReports().

To fix this, we keep track of whether the parent has actually done its
report, and defer finishing the report until then.
2014-04-07 13:33:00 +02:00
Ben Kelly
f4e380759d Bug 991412: Provide static convenience method to retrieve RSS. r=njn 2014-04-07 10:46:20 -04:00
Ehsan Akhgari
01376e5cc1 Bug 982072 - Don't leak the argument passed to RegisterStrongMemoryReporter if we fail to get the service; r=froydnj 2014-03-11 14:15:27 -04:00