Commit Graph

3080 Commits

Author SHA1 Message Date
Nicholas Nethercote
ffb1fefc9f Bug 1202526 (part 8) - Use PLDHashTable::RemoveEntry() in the cycle collector. r=mccr8.
This avoids repeating the hash table search in order to remove a CC graph
entry, which is good because it's a common operation.
2015-09-07 21:15:32 -07:00
Milan Sreckovic
9a9792e17d Bug 1128472 - Part 3. Vendor string on windows. r=aklotz 2015-09-03 13:10:00 +02:00
Milan Sreckovic
79db27187c Bug 1128472 - Part 2. Linux support. r=gfritzsche 2015-09-08 14:35:00 +02:00
Milan Sreckovic
c2e36204f0 Bug 1128472 - Part 1. Mac and Win for model, stepping, cores, cache, cpu speed; VM max on Win only, vendor on Mac only. r=gfritzsche 2015-09-01 14:48:00 +02:00
Terrence Cole
0716d4888f Bug 1199843 - Part 3: Strongly type JS::TraceChildren; r=jonco r=mccr8
--HG--
extra : rebase_source : c779897338dc4b73dca98517acb8d0eef7e0d7a5
2015-09-02 11:34:36 -07:00
Andrew McCreight
e46abbfe4f Bug 1200795, part 2 - Add memory reporting for CCGraph::mPtrToNodeMap. r=njn 2015-09-04 09:45:44 -07:00
Andrew McCreight
bd863a70b2 Bug 1200795, part 1 - Eliminate excessive detail from cycle collector graph memory reporting. r=njn 2015-09-04 09:45:44 -07:00
Alphan Chen
daa714c8ea Bug 1154435 - [nsGZFileWriter] Add one more mode for writing a GZFile (Create/Append). r=froydnj 2015-06-05 11:20:16 +08:00
Alphan Chen
a7f16b9ea6 Bug 1154435 - [nsDumpUtil] Refine nsDumpUtils::OpenTempFile to make this function more flexible. r=dhylands
- Add one more mode in this function (CREATE/CREATE_UNIQUE)
- export the header file for the usage of other components
2015-06-04 14:47:09 +08:00
Ben Kelly
10350eb242 Bug 1184607 P4 Handle the RequestRedirect mode during service worker interception. r=nsm
* * *
Bug 1184607 P4 interdiff 001 fix manual redirect assertion for navigations r=nsm
* * *
Bug 1184607 P4 interdiff 002 dom/worker nits
2015-08-31 14:26:29 -07:00
Nicholas Nethercote
f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Kyle Huey
e5b6091772 Bug 1195755: Don't assert recursion depth sanity on Mac, because there is none. r=me
--HG--
extra : rebase_source : 6c0c24ead27200b30302828dea22c50219c79a2c
2015-08-21 19:56:56 -07:00
Nicholas Nethercote
c8578157c2 Bug 1194061 - Implement "system-heap-allocated" reporter for Windows. r=dmajor.
--HG--
extra : rebase_source : a0f31c1ca1c6671d592c73d2473dcc5669022077
2015-08-19 20:35:17 -07:00
Xidorn Quan
9960d37ffb Bug 1196050 - Replace NSCAP_Zero usage with decltype(nullptr). r=froydnj
--HG--
extra : source : 9c567ed00fcf2433e484325bab9a18322718b0da
2015-08-20 10:30:10 +10:00
Chris Manchester
f2dcab6039 Bug 1131325 - Move system country code from nsIGfxInfo2 to a more appropriate location. r=aklotz,smichaud
--HG--
extra : commitid : Jglg9X6ykB1
2015-07-28 15:45:34 -07:00
Nathan Froyd
5588065ae9 Bug 1189829 - fix quadratic behavior in nsConsoleService; r=erahm 2015-08-17 21:05:48 -04:00
Andrew McCreight
2da6cab23a Bug 1190483 - Followup to address review comment. 2015-08-14 10:04:41 -07:00
Andrew McCreight
066918123c Bug 1190483 - Add a way to record a DMD log late in shutdown. r=erahm 2015-08-14 10:00:04 -07:00
Mike Conley
7421d14843 Bug 1106321 - Serialize DEVMODE down to the content process when printing on Windows. r=jimm
--HG--
extra : commitid : IhjNJOOtmms
extra : rebase_source : 6b0ba29e866dcf63a3054eb955ece082cbbeda13
extra : amend_source : 70bcf59b1f4b1d7a3a8ec4183b3b9710eedfb5f9
2015-08-06 17:36:54 -04:00
Nicholas Nethercote
01a073b5a2 Bug 828844 - Add a "system-heap-allocated" memory report on Linux. r=glandium.
This gives zero when jemalloc is enabled and non-zero when jemalloc is disabled
(e.g. I got 83 MiB at start-up, which sounds plausible).

--HG--
extra : rebase_source : f39a15472d48643f57a77f1df03e4a29543d0867
2015-08-12 17:44:00 -07:00
Francois Marier
34de332db0 Bug 992096 - Implement Sub Resource Integrity [1/2]. r=baku,r=ckerschb
Code changes
2015-08-12 20:19:11 -07:00
Terrence Cole
2c05aff66d Bug 1193032 - Part 2: Make unlimited SliceBudget initialization explicit; r=ehoogeveen,r=mccr8 2015-08-11 08:42:24 -07:00
Kyle Huey
76e3009ab8 Bug 1179909: Refactor stable state handling. r=smaug
This is motivated by three separate but related problems:

1. Our concept of recursion depth is broken for things that run from AfterProcessNextEvent observers (e.g. Promises). We decrement the recursionDepth counter before firing observers, so a Promise callback running at the lowest event loop depth has a recursion depth of 0 (whereas a regular nsIRunnable would be 1). This is a problem because it's impossible to distinguish a Promise running after a sync XHR's onreadystatechange handler from a top-level event (since the former runs with depth 2 - 1 = 1, and the latter runs with just 1).

2. The nsIThreadObserver mechanism that is used by a lot of code to run "after" the current event is a poor fit for anything that runs script. First, the order the observers fire in is the order they were added, not anything fixed by spec. Additionally, running script can cause the event loop to spin, which is a big source of pain here (bholley has some nasty bug caused by this).

3. We run Promises from different points in the code for workers and main thread. The latter runs from XPConnect's nsIThreadObserver callbacks, while the former runs from a hardcoded call to run Promises in the worker event loop. What workers do is particularly problematic because it means we can't get the right recursion depth no matter what we do to nsThread.

The solve this, this patch does the following:

1. Consolidate some handling of microtasks and all handling of stable state from appshell and WorkerPrivate into CycleCollectedJSRuntime.
2. Make the recursionDepth counter only available to CycleCollectedJSRuntime (and its consumers) and remove it from the nsIThreadInternal and nsIThreadObserver APIs.
3. Adjust the recursionDepth counter so that microtasks run with the recursionDepth of the task they are associated with.
4. Introduce the concept of metastable state to replace appshell's RunBeforeNextEvent. Metastable state is reached after every microtask or task is completed. This provides the semantics that bent and I want for IndexedDB, where transactions autocommit at the end of a microtask and do not "spill" from one microtask into a subsequent microtask. This differs from appshell's RunBeforeNextEvent in two ways:
a) It fires between microtasks, which was the motivation for starting this.
b) It no longer ensures that we're at the same event loop depth in the native event queue. bent decided we don't care about this.
5. Reorder stable state to happen after microtasks such as Promises, per HTML. Right now we call the regular thread observers, including appshell, before the main thread observer (XPConnect), so stable state tasks happen before microtasks.
2015-08-11 06:10:46 -07:00
Aryeh Gregor
80ea0a3e53 Bug 1190823 - Move OwningNonNull.h to xpcom/base/; r=froydnj
--HG--
rename : dom/bindings/OwningNonNull.h => xpcom/base/OwningNonNull.h
2015-08-05 15:28:27 +03:00
Birunthan Mohanathas
7315345693 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
James Cheng
315911c26e Bug 1189231 - Impl operator->* to nsAutoPtr. r=nfroyd 2015-07-30 21:02:00 -04:00
Nicholas Nethercote
d98d14fa1e Bug 1189156 (part 4) - Don't use enumeration style for nsBaseHashtable::SizeOf{In,Ex}cludingThis(). r=erahm,jfkthame.
After this change, we have ShallowSizeOf{In,Ex}cludingThis(), which don't do
anything to measure children. (They can be combined with iteration to measure
children.)

--HG--
extra : rebase_source : f98420176f50990bbc5a25e35788328154cfeb00
2015-07-30 21:19:57 -07:00
Jesse Ruderman
7ed9e0fe1b Bug 1024259: Use NS_FREE_PERMANENT_DATA more consistently. r=mccr8 2015-07-31 12:11:48 -07:00
Kyle Huey
8f1d6bf154 Bug 1152574: Fix console service discarding to run when it is actually safe to do so (off of inner-window-destroyed). Also add a backstop at xpcom-shutdown to discard any cycle collected messages before it is too late. r=froydnj
--HG--
extra : rebase_source : 689ed129fd8df604385dde4fe9d9477f14f2fced
2015-07-31 06:49:27 -07:00
Andrew McCreight
3127d66102 Bug 1189122 - Assert when we Suspect() when a CC scan is in progress. r=smaug
This can cause leaks that are invisible to our XPCOM leak detection system.

To avoid this, classes should not addref or release in their Traverse methods.

--HG--
extra : rebase_source : acd0b070c63cbb4111c165d6b131b8e3b822773a
2015-07-29 20:48:00 +02:00
Nicholas Nethercote
87b80f8c66 Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.

And do likewise for nsTObserverArray.

--HG--
extra : rebase_source : 6a8c8d8ffb53ad51b5773afea77126cdd767f149
2015-07-28 23:24:24 -07:00
Bobby Holley
97b9240b34 Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj 2015-07-29 10:44:59 -07:00
Bobby Holley
4762225b99 Bug 1188696 - Remove the XPCOM dependencies in nsRefPtr.h. r=froydnj 2015-07-29 10:44:58 -07:00
Ryan VanderMeulen
fb6b2747d5 Bug 1180017 - Fix up the badly-horked backout and re-land.
CLOSED TREE

--HG--
extra : amend_source : 0b7ac18429b248cf05cfe33f6b2f6efdf1602c38
extra : histedit_source : bdb11dafa100809ec17491e5711fb0b507e023c6%2C5e4134650a804859dc8b3078688fa4655052263f
2015-07-29 12:31:47 -04:00
Jim Blandy
4e8fc0bdcb Bug 1180017 - Give GCCellPtr is<T> and to<T> methods, replacing isFoo and toFoo methods. Fix callers. r=terrence 2015-07-03 15:06:23 -07:00
Carsten "Tomcat" Book
25a2a75a56 Backed out changeset 465793bc6fcf (bug 1180017) for suspicion of causing bug 1188799 2015-07-29 15:27:12 +02:00
Jim Blandy
ff7cc06ef6 Bug 1180017: Give GCCellPtr is<T> and as<T> methods, replacing isFoo and toFoo methods. Fix callers. r=terrence
--HG--
extra : rebase_source : 4a381c5d8427ad2995426e65c69af1597b1557c2
2015-07-07 09:52:01 -07:00
Ehsan Akhgari
7a81d59cb2 Bug 1188203 - Fix more constructors in XPCOM; r=froydnj 2015-07-28 12:24:37 -04:00
Nate Hughes
94f8966c4b Bug 986302 - Add memory reporting for HPACK tables r=hurley r=njn 2015-07-17 14:38:10 -07:00
Andrew McCreight
7c34797069 Bug 1179924 - Create a more modern JS object holder for cross-thread references to JS objects. r=smaug 2015-07-21 11:31:44 -07:00
Andrew McCreight
6ea0227583 Bug 1185144 - nsConsoleService::LogMessageWithMode() should release the retired message on the main thread. r=froydnj
Also, add release asserts that the other methods that addref or release console messages are only run on the main thread.

Finally, add an assert that nsScriptErrorWithStack is only created on the main thread.
2015-07-21 07:50:09 -07:00
Carsten "Tomcat" Book
f7531b86f7 Backed out changeset 8b90b21e0c64 (bug 986302) for static build failures 2015-07-21 08:53:37 +02:00
Nate Hughes
3f6e8d3da5 Bug 986302 - Add memory reporting for HPACK tables. r=hurley r=njn 2015-07-17 14:38:10 -07:00
Kyle Huey
ee4f5ba9fb Bug 1185470: Remove 'Get' prefixes from hashtable iterator methods. r=froydnj 2015-07-20 20:21:28 +08:00
Carsten "Tomcat" Book
0551dfb053 merge mozilla-inbound to mozilla-central a=merge 2015-07-20 11:36:42 +02:00
Victor Porof
f11ae1a898 Bug 1183228 - Use separate files for AutoTimelineMarker and AutoGlobalTimelineMarker, r=smaug 2015-07-17 15:51:39 -04:00
Ryan VanderMeulen
fa5776b708 Merge m-c to fx-team. a=merge 2015-07-15 13:30:09 -04:00
Kan-Ru Chen
c825f41c31 Bug 1181518 - Change the reason for memory-pressure fired during priority change. r=gsvelto 2015-07-15 17:07:39 +08:00
Ben Kelly
1d8798cbc9 Bug 1173912 Fail opaque responses for client requests. r=ehsan 2015-07-14 13:11:26 -07:00
Ben Kelly
e2321797dc Bug 1173934 Show a message if a docshell fails to load due to SW intercept failure. r=ehsan r=jdm 2015-07-14 13:11:26 -07:00