Andrew McCreight
8948c072d8
Bug 1005396 - Finish a long ICC early after graph building has finished. r=smaug
2014-05-14 09:45:50 -07:00
Nicholas Nethercote
411cb9c980
Bug 1005836 - Avoid slop NodePool::Block allocations. r=mccr8.
...
--HG--
extra : rebase_source : 2297b22e7a5d6679d8b25679d338f001c7427b60
2014-05-13 20:42:27 -07:00
Jed Davis
eb69e55005
Bug 973090 - IPC remoting for child GC/CC logging. r=mccr8, r=bent
...
This has a few semi-interdependent pieces:
* Factoring out the file opening/closing/renaming from the GC/CC logging.
* Using IPC to have the child log to files that the parent opened.
* Changing nsIMemoryInfoDumper.dumpGCAndCCLogsToFile to report completion
of child process logging (which was impossible before this, and which is
needed to have a meaningful test case).
* Changing about:memory to dump logs for child processes, matching the
behavior of the "Measure" button, because it can tell the user where
they are now.
* Add a test for multiprocess GC/CC log dumping (only of the XPCOM
interface, not by clicking buttons and scraping the about:memory page,
but done as a chrome mochitest to start remote browsers); based on
test_memoryReporters2.xul in the same directory.
2014-05-13 13:13:00 -04:00
Andrew McCreight
9e9b401d1d
Bug 958353, part 2 - Always check if an ICC is in progress in FixWeakMappingGrayBits(). r=smaug
...
This makes it easier to test against invalid interleavings of IGC and ICC.
2014-05-13 11:58:39 -07:00
Birunthan Mohanathas
861e6d5ffe
Bug 995730 - Fix style violations in xpcom/base/. r=froydnj,continuation
2014-05-13 20:41:38 +03:00
Andrew McCreight
7ee0fd7bbf
Bug 972605, part 3 - Make nsErrorService use a modern hash table. r=froydnj
2014-05-09 13:47:37 -07:00
Andrew McCreight
a3ef5307d4
Bug 972605, part 2 - Inline nsInt2StrHashtable. r=froydnj
...
Also clean up the style a little.
2014-05-09 13:47:36 -07:00
Andrew McCreight
60e975c286
Bug 972605, part 1 - Rename nsErrorService arguments to aFoo form. r=froydnj
2014-05-09 13:47:36 -07:00
Andrew McCreight
e62951375f
Bug 1005500 - Use a separate linear scan pass to mark nodes white in ScanRoots. r=smaug
...
The existing code for ScanRoots looks at all traversal roots in the graph,
and floods white or black from them. This can take up a large chunk of the
Scan/Unlink slice of ICC, maybe because graph traversal has poor locality.
Outside of a leak, the cycle collector graph is usually only large when
there is a lot of garbage (95% or more of the graph), so we want to
speed up white marking.
To do this, I add a new pass that scans every node and directly sets the
color of any node that should be white, without flooding. This is very
fast. Then a second pass floods black from any remaining grey nodes.
On the page close CC for a real page, I measured a 10x improvement in
ScanRoots() time with this algorithm, from 3ms to 0.3ms.
2014-05-08 11:28:03 -07:00
Jonathan Watt
3b52ee43ad
Bug 590790 part 2 - Add memory reporter for VectorImage's SVGDocumentWrapper's document. r=dholbert, r=njn, r=seth
2014-05-08 10:53:00 +01:00
Andrew McCreight
48337cf849
Bug 1005975 - Define FloodBlackNode as a convenience function. r=smaug
2014-05-06 17:25:27 -07:00
Andrew McCreight
09dabdad5b
Bug 1006635, part 2 - Add more Checkpoints to the cycle collector. r=smaug
2014-05-06 17:25:27 -07:00
Andrew McCreight
d574e71a90
Bug 1006635, part 1 - Make TimeLog use doubles and reduce the threshold. r=smaug
2014-05-06 17:25:27 -07:00
Andrew McCreight
72fc10903d
Bug 1005232 - Log number of incremental cycle collector slices. r=smaug
2014-05-06 17:25:26 -07:00
Andrew McCreight
bdea2bfd58
Bug 1004017 - Rename CycleCollectedJSRuntime::NeedCollect() and Collect(). r=smaug
2014-05-06 17:25:26 -07:00
Andrew McCreight
67aeb89cc4
Bug 958353 - Add finishCC() and ccSlice() methods for testing incremental cycle collection. r=smaug
2014-05-06 17:25:26 -07:00
Ed Morley
b83255e4e2
Fix incorrect resolution of merge conflicts between bug 995730 and bug 1001542 (no bug; CLOSED TREE)
...
--HG--
extra : amend_source : 5b90e13f8f3a7419e26acee6e483855bdd8c3558
2014-05-06 09:00:06 +01:00
Wes Kocher
51b4f13fac
Merge m-c to b2g-inbound
2014-05-05 21:19:59 -07:00
Dave Hylands
cbc0a4b450
Bug 1001542 - Make OS_VERSION use b2g version info rather than Linux version info.
2014-05-05 15:24:58 -07:00
Eric Rahm
33ef4a9017
Bug 999473 - report number of open file descriptions (fd) in about:memory. r=njn
2014-04-25 13:00:15 -07:00
Ryan VanderMeulen
a4f9513be6
Backed out changeset 83d914c3431d (bug 999473) for Linux mochitest-other failures.
2014-05-01 16:45:21 -04:00
Birunthan Mohanathas
cf3e12c35a
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
Eric Rahm
57fc0ea6ef
Bug 999473 - report number of open file descriptions (fd) in about:memory. r=njn
2014-04-25 13:00:15 -07:00
Alphan Chen
f2b3623c0f
Bug 1000755 - [about:service] Refine the format of output reports. r=dhylands
2014-04-28 14:20:41 +08:00
Birunthan Mohanathas
ff8ce9bd42
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
Zack Weinberg
d5fc5cb4a1
Bug 1001842 part 1: record the umask in NS_InitXPCOM2 and expose it to JS via nsSystemInfo. r=bsmedberg
2014-04-26 10:56:54 -04:00
Nathan Froyd
7301de13be
Backout 2629257557ff:284be1609a50 (bug 1001842) for debug xpcshell bustage
2014-04-26 13:18:32 -04:00
Zack Weinberg
0ebd4af1d3
Bug 1001842 part 1: record the umask in NS_InitXPCOM2 and expose it to JS via nsSystemInfo. r=bsmedberg
2014-04-26 10:56:54 -04:00
Eric Rahm
73af1e6314
Bug 1001137 - Use proper pref for configuring fifo directory. r=froydnj
...
--HG--
extra : rebase_source : 6d45f4b6b9d86ab6718d07a4a7bfe83454d095fd
2014-04-25 13:53:01 -07:00
Eric Rahm
18f7073ce7
Bug 1000461 - Enable triggering memory report via fifo device on OS X. r=froydnj
2014-04-24 17:35:59 -07:00
Eric Rahm
4277a8d2df
Bug 1001137 - Enabling FifoWatcher via user pref does not work. r=froydnj
2014-04-24 15:58:57 -07:00
Trevor Saunders
3f904cfc43
bug 980753 - make nsRefPtr movable r=froydnj
2014-02-26 18:11:14 -05:00
Eric Faust
a41d6a1508
Bug 1001126 - Allow AllTraces CC logging other than at shutdown. (r=mccr8)
2014-04-24 14:28:49 -07:00
Eric Rahm
78fb9239ae
Bug 1000621 - Check if DMD is enabled before dumping. r=njn. DONTBUILD
2014-04-24 12:43:11 -07:00
Steven Michaud
4bae9fb75a
Bug 997908 - Add null check to ReleaseSliceNow() as bandaid for Mac topcrasher. r=smaug
2014-04-24 11:46:39 -05:00
Terrence Cole
4ab31f28b9
Bug 807168 - Make JSTracer into a real C++ class and kill the macro accessors; r=jonco,mccr8
...
--HG--
rename : js/public/Tracer.h => js/public/TracingAPI.h
2014-04-11 15:19:05 -07:00
Dave Hylands
775a6c8685
Bug 990230 - Fix heap use-after-free in memory reporter. r=n.nethercote
2014-04-17 16:57:30 -07:00
Terrence Cole
fb5836e633
Bug 994413 - Make Gecko use the same value marking semantics as SpiderMonkey; r=jonco,mccr8
2014-04-09 12:42:48 -07:00
Nathan Froyd
2585135c22
Bug 993546 - refactor malloc-wrapping memory reporter implementations; r=njn
2014-04-08 13:51:20 -04:00
Márk Bartos
2aab2cb3ab
Bug 106787 - Fix: Remove nsIAllocator and it's references. r=bsmedberg
2014-04-14 17:20:45 +02:00
Eric Rahm
66407f4d7b
Bug 995345 - Improve efficiency of NS_DescribeCodeAddress. r=froydnj
...
--HG--
extra : rebase_source : ab839d1898d9fe122f2519a657391437dc7216bc
2014-04-14 13:25:04 -07:00
Boris Zbarsky
a13f2f38be
Bug 995047. Change out stack/exception APIs to hand out AString instead of AUTF8String for filename/functionname, so we end up with fewer string conversions in practice. r=smaug
2014-04-11 22:20:40 -04:00
Jed Davis
4742184268
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
de721ff0ff
Bug 991412: Provide static convenience method to retrieve RSS. r=njn
2014-04-07 10:46:20 -04:00
Maksim Lebedev
4b49370e14
Bug 968148 - Implement PointerCapture for pointer events. r=smaug
...
--HG--
extra : rebase_source : 331cf187194c8827e4b75835e85b2d79fdc419c7
2014-04-04 10:09:10 -07:00
Jan Varga
ad7713c9a2
Bug 856921 - Ensure that all quota failures are exposed to JS as QuotaExceededError. r=bent
2014-04-02 19:14:14 +02:00
Jim Blandy
db472c4503
Bug 951855: Add omitted doc fix requested by smaug in patch review. DONTBUILD r=smaug
2014-04-01 21:30:42 -07:00
Jim Blandy
414ad5b6e7
Bug 951855: Improve documentation for nsICycleCollectionListener and nsICycleCollectionHandler. r=smaug
2014-04-01 21:12:08 -07:00
snigdha
90f0f64d5b
Bug 798033 - Headers should generally not do "using namespace" at file scope. r=jib, r=jmathies, r=rjesup, r=ekr, r=ncameron, r=blassey
2014-04-01 08:29:25 -04:00
Ehsan Akhgari
5b9f45a1a5
Bug 798158 - Part 1: Use a pointer-sized type to store refcounts internally; r=bsmedberg
2014-03-27 16:38:33 -04:00
Ehsan Akhgari
e844abc702
Bug 798158 - Part 0: Do not treat format warnings as errors in a few directories; r=mshal
2014-03-27 16:38:20 -04:00
Jan Beich
7107ae4827
Bug 988910 - Explictly include unistd.h for read/write/close calls. r=njn
2014-03-27 15:06:14 -04:00
Ryan VanderMeulen
4dc5242df5
Merge inbound to m-c.
2014-03-26 20:58:31 -04:00
Alphan Chen
9eba7d103a
Bug 964636 - Part 2: Implement "about:service" framework core. r=dhylands
2014-03-20 10:52:11 +08:00
Alphan Chen
9bb915d298
Bug 964636 - Part 1: Move common classes and functions out of nsMemoryInfoDumper. r=dhylands
2014-03-20 15:29:51 +08:00
Fabrice Desré
57b5964974
Bug 980419 - Don't access preferences omt in nsMemoryInfoDumper.cpp r=bsmedberg
2014-03-21 13:50:44 -07:00
Nathan Froyd
e12481c9a7
Bug 984443 - get rid of #ifndef $OTHER_HEADER bits from xpcom/ as relics of a bygone era; r=ehsan
2014-03-17 12:20:47 -04:00
Andrew McCreight
568c5bf52a
Bug 984665 - Change the extra shutdown CC assertion into a warning. r=smaug
2014-03-19 06:05:18 -07:00
Andrew McCreight
eb58d2f29f
Bug 984685 - Add cycle collector efficiency to COLLECT_TIME_DEBUG logging. r=smaug
2014-03-19 06:05:17 -07:00
Eric Faust
f71cba5543
Bug 987750 - Add CC logging options for process specifiers. (r=mccr8)
2014-03-26 09:57:38 -07:00
Kyle Huey
7067fb5db1
Bug 345123: Remove nsGetterAddRefs<T>'s operator nsISupports**. r=bsmedberg
2014-03-15 12:00:17 -07:00
Kyle Huey
84360900b0
Bug 967364: Pass already_AddRefed by reference instead of by value. r=bsmedberg
2014-03-15 12:00:17 -07:00
Kyle Huey
c49e590515
Bug 967364: Privatize already_AddRefed::mRawPtr. r=bsmedberg
2014-03-15 12:00:15 -07:00
Wes Kocher
aa89f0292c
Merge inbound to m-c
2014-03-14 22:20:25 -07:00
Andrew McCreight
41c79b6620
Bug 948755 - Log incremental cycle collector roots. r=smaug
2014-03-14 16:07:07 -07:00
Andrew McCreight
5a31b3fd33
Bug 982847 - JSGCThingParticipant::Traverse should respect AllTraces. r=smaug
2014-03-14 16:07:07 -07:00
Yuan Xulei
858942196b
Bug 910412 - Implement |getRoot|, |createDirectory| and |get| for Directory. r=dhylands, r=smaug
2014-03-05 11:25:40 +08:00
Ehsan Akhgari
7e1e6e5ff9
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
Ryan VanderMeulen
5099e8a290
Backed out 5 changesets (bug 910412) for intermittent crash whack-a-mole.
...
Backed out changeset e3eb9463b3e1 (bug 910412)
Backed out changeset d5863d302bde (bug 910412)
Backed out changeset 422b66d4b1ca (bug 910412)
Backed out changeset 3431d59d752e (bug 910412)
Backed out changeset b1c0310cdac1 (bug 910412)
2014-03-11 12:17:03 -04:00
Andrew McCreight
d1cecbd6d3
Bug 981033 - Clear mActivelyCollecting before restarting CC. r=smaug
2014-03-11 07:34:35 -07:00
Yuan Xulei
260442ce9a
Bug 910412 - Implement |getRoot|, |createDirectory| and |get| for Directory. r=dhylands, r=smaug
2014-03-05 11:25:40 +08:00
Jed Davis
6a4c4691a0
Bug 946407 - Reimplement DumpMemoryInfoToTempDir in terms of GetReports. r=njn
...
This winds up exposing things in the nsIMemoryReporterManager interface
that arguably don't belong at that level of abstraction -- "minimize
memory usage first" and DMD -- in order to take advantage of the
infrastructure that GetReports already has for managing the child
processes.
2014-03-04 18:27:13 -08:00
Andrew McCreight
bb417adcd3
Bug 978486 - Remove nsErrorService::mErrorStringBundleKeyMap. r=froydnj
2014-03-04 09:49:40 -08:00
Bobby Holley
a52c7e5aa2
Bug 975419 - Add a JS::TenuredHeap<JSObject*> overload to TraceCallbacks. r=mccr8,terrence
2014-03-03 08:53:42 -08:00
Jan Beich
90ced12417
Bug 977457 - Move _GNU_SOURCE ifdef a little up to account for cxxabi.h from libcxxrt. r=ehsan
2014-03-03 10:29:08 -05:00
Andrew McCreight
59f6206562
Bug 977688 - Get rid of CC_AbortIfNull. r=smaug
2014-02-28 09:56:23 -08:00
Masatoshi Kimura
90aff37f46
Bug 972761 - Move WindowsVersion.h to MFBT. r=froydnj
...
--HG--
rename : xpcom/base/WindowsVersion.h => mfbt/WindowsVersion.h
2014-02-28 07:58:47 +09:00
Andrew McCreight
537eb6fa81
Bug 962608 - Make PL_DHashTableInit infallible by default. r=briansmith,bsmedberg,ehsan,froydnj,jduell,jfkthame,roc,smaug
2014-02-27 10:04:09 -08:00
L. David Baron
2b5d6b3cfb
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
4f04bcdc57
Bug 976350 patch 1: Move the contents of nsTraceRefcnt.h into nsISupportsImpl.h. r=bsmedberg
...
This makes sense since the file no longer contains anything with the
nsTraceRefcnt name in it, and it will allow renaming nsTraceRefcntImpl
back to nsTraceRefcnt.
2014-02-26 13:36:35 -08:00
Andrew McCreight
328968900f
Bug 975849 - Remove overly strict assertion from CycleCollectedJSRuntime::TraverseRoots to restore previous behavior. r=smaug
2014-02-26 13:18:17 -08:00
Gabriele Svelto
b7270f6ca1
Bug 975434 - Remove the ability to cancel memory minimizations. r=njn
2014-02-25 16:37:30 +01:00
Ehsan Akhgari
e9da09b721
Backed out changeset 8d8165293e9b (bug 976372) because of Windows debug bustage on a CLOSED TREE
2014-02-24 23:01:54 -05:00
Ehsan Akhgari
a196505a83
Backed out changeset f74c9326b89c (bug 976247) because I landed the wrong patch :(
2014-02-24 21:07:37 -05:00
Ehsan Akhgari
5616d30270
Bug 976372 - Remove support for compilers which lack support for dynamic_cast<void*>; r=dbaron
...
--HG--
extra : rebase_source : 83a23e3b8fa4462eb70a1844b555c7605162a497
2014-02-24 21:06:06 -05:00
Ehsan Akhgari
98a137f278
Bug 976247 - Remove a useless static keyword from mozilla::detail::DEAD; r=froydnj
...
--HG--
extra : rebase_source : e73444ec000f1e867651d39cf2aa6beaf88bf4f3
2014-02-24 19:37:34 -05:00
L. David Baron
f6e4eec730
Bug 975295 patch 2: Remove the nsITraceRefcnt interface and any instantiation of the nsTraceRefcntImpl object. r=bsmedberg
2014-02-24 15:27:53 -08:00
L. David Baron
6f9a5e5e60
Bug 939610: Return to printing stack walk addresses in uppercase hexidecimal rather than lowercase, since we have scripts depending on it. r=ted
2014-02-24 15:27:52 -08:00
Terrence Cole
cedc05a6bc
Bug 956081 - Fix the CC's GC-has-been-run detection in the presence of GGC; r=mccr8
...
--HG--
extra : rebase_source : de945b8e2f4972cb8b563f17a95c66cbba86a902
2014-02-20 13:38:32 -08:00
Ehsan Akhgari
f4ddde0564
Bug 935778 - Part 1: Add RefCountType, a type compatible with nsrefcnt, to MFBT; r=dbaron,froydnj
2014-02-21 14:45:50 -05:00
Chris Peterson
62f1c3dc89
Bug 712939 - Replace JS_STATIC_ASSERT with static_assert outside js/ directory. r=BenWa r=bsmedberg r=mccr8
2014-02-17 22:10:50 -08:00
Ehsan Akhgari
8212be10db
Bug 935778 - Part 0.2: Spray some MOZ_DECLARE_REFCOUNTED_TYPENAME across the tree
2014-02-20 21:33:49 -05:00
Andrew McCreight
abda47e08d
Bug 901597, part 2 - Add environment var to CC log only main or worker threads. r=smaug
2014-02-20 14:27:04 -08:00
Andrew McCreight
3764cf8b93
Bug 901597, part 1 - Move CC logging logic into nsCCParams. r=smaug
2014-02-20 14:27:03 -08:00
Andrew McCreight
1327a45957
Bug 972940 - Rename XPCOM_CC_ env vars to MOZ_CC_. r=smaug,njn
2014-02-20 14:27:03 -08:00
Andrew McCreight
57d072a733
Back out bug 712939 for not getting fully reviewed.
2014-02-20 06:40:56 -08:00
Chris Peterson
065c214bf6
Bug 712939 - Replace JS_STATIC_ASSERT with static_assert outside js/ directory. r=mccr8
2014-02-17 23:56:19 -08:00
Andrew McCreight
9ff86c6b97
Backout bug 972940 for valgrind leaks on this CLOSED TREE
2014-02-19 17:20:48 -08:00
Andrew McCreight
1ee530c7ef
Backout bug 901597 for valgrind leaks
2014-02-19 17:19:17 -08:00
Andrew McCreight
607b39da48
Backout bug 901597 for valgrind leaks
2014-02-19 17:18:59 -08:00