Commit Graph

1332 Commits

Author SHA1 Message Date
Phil Ringnalda
e2e1627d17 Back out 35371620801a:bf2019278b77 (bug 937317) for gaia-ui-test bustage and frequent timeouts in its own test 2013-12-07 11:08:56 -08:00
Bobby Holley
f5cb1b3082 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-06 12:01:41 -08:00
Andrew McCreight
5900c0c4d6 Bug 937766, part 5 - Implement PrepareForGarbageCollection. r=smaug
Running the garbage collector can cause objects in the CC graph to
die, so just finish off an incremental cycle collection when we
start a GC.
2013-12-06 10:17:20 -08:00
Andrew McCreight
d1b570f76d Bug 937766, part 4 - Add GCGraph::IsEmpty method. r=smaug 2013-12-06 10:17:20 -08:00
Andrew McCreight
40ad83c922 Bug 937766, part 3 - Add mParticipant null checks. r=smaug
When an object dies during an incremental cycle collection, we null out
its mParticipant, so we must add various null checks to avoid crashing
when we reach the CC graph representation of an object that has died.
2013-12-06 10:17:20 -08:00
Andrew McCreight
b7c15b3db2 Bug 937766, part 2 - Make SnowWhiteKiller remove dying things from the CC graph. r=smaug
If we purge snow white objects while ICC is in progress, we need to
make sure to remove anything from the CC graph to avoid dangling pointers.
We don't need to do that after shutdown.
2013-12-06 10:17:20 -08:00
Andy Wingo
37b518d477 Bug 945813 - Paper over cycle collection problem in IndexedDB. r=mccr8, r=khuey 2013-12-04 14:53:25 +01:00
Benjamin Smedberg
81e6facd1d Bug 946877 - Don't PGO nsDebugImpl.cpp, to see if that aids stackwalking around NS_OOM_ABORT, r=ted 2013-12-06 09:00:07 -05:00
Carsten "Tomcat" Book
8eed12cc2f Backed out changeset 004fa11e352a (bug 937317) WinXP Build Bustage on a CLOSED TREE 2013-12-06 08:42:40 +01:00
Bobby Holley
95ee5b5404 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-05 21:34:16 -08:00
Jan Beich
54fe9a1901 Bug 946560 - Dump about:memory upon receiving a signal on FreeBSD as well. r=njn 2013-12-05 09:38:46 -05:00
Nicholas Nethercote
803d8a5bcc Bug 943660 (part 2) - Remove remnants of Remove nsIMemoryReporter::name.
--HG--
extra : rebase_source : 900bd1c641b26623cccf14d952b5387223b489eb
2013-12-03 20:01:24 -08:00
Jacek Caban
843b3659fc Bug 944905 - Fixed char16_t/wchar_t mismatch in xpcom/ r=bsmedberg 2013-12-04 13:19:09 +01:00
Ryan VanderMeulen
6294317fb8 Backed out changeset 2572592c326d (bug 945813) for Linux64 debug xpcshell crashes.
CLOSED TREE
2013-12-03 20:35:03 -05:00
Andy Wingo
c0c5e99d51 Bug 945813 - Paper over cycle collection problem in IndexedDB. r=mccr8, r=khuey 2013-12-03 18:35:04 +01:00
Andrew McCreight
dc0b895a45 Bug 937751, part 7 - Incrementalize nsCycleCollector::MarkRoots. r=smaug
Now that all of MarkRoots's state is stored on the heap, it can be run
incrementally. Like with Collect, it takes a budget to determine how
long it can run. Any residual budget will be available to the caller.

One difference is that Collect calls checkOverBudget() which always checks
the time, but MarkRoots uses isOverBudget() to determine if there is
any time remaining. This only checks the current time every
kNumNodesBetweenTimeChecks nodes, to reduce the overhead of checking.
2013-12-03 10:47:47 -08:00
Andrew McCreight
145f83b008 Bug 937751, part 6 - Allocate the current MarkRoots node on the heap rather than the stack. r=smaug
To make nsCycleCollector::MarkRoots incremental, we have to store all of its state on
the heap, so we can resume it.  The only remaining state to convert is the NodePool
enumerator.
2013-12-03 10:47:47 -08:00
Andrew McCreight
04314bee87 Bug 937751, part 5 - Add optional phase logging. r=smaug
For debugging purposes, it can be useful to see what ICC is currently
being run.
2013-12-03 10:47:47 -08:00
Andrew McCreight
994059dfef Bug 937751, part 4 - Incrementalize nsCycleCollector::Collect. r=smaug
This patch makes it so that Collect takes a time budget that describes
how much longer the collection can be run for. Then we run the current phase.
Once this is done, we check whether we have exceeded our time budget or
if we have finished a collection. If neither of those have happened, we
run the cycle collector some more.

If we're a manually triggered CC, and we were in the middle of an ICC when
the CC started, then once the current CC is complete, we start a new CC
immediately. This is needed to ensure that a manually specified listener
is used, and to ensure that any garbage objects the caller expects to be
collected are in fact collected.

Note that in this patch we are always passing in an unlimited budget to
Collect, so cycle collections will always be run to completion.
2013-12-03 10:47:47 -08:00
Andrew McCreight
5076bf4519 Bug 937751, part 3 - Protect against reentrancy with when incrementally CCing. r=smaug
Cycle collection protects against reentrancy by setting a flag to indicate a collection
is in progress. With synchronous CC, it is okay to set this in BeginCollection, and
clear it in CleanupAfterCollection. With ICC, this must be set and cleared in every
slice, so I moved the fixing of it to Collect.  I also changed the name of the variable,
because we can be in the middle of an ICC without the CC being actively running,
and it is only the latter we are worried about here.
2013-12-03 10:47:47 -08:00
Andrew McCreight
4411a6d49f Bug 937751, part 1 - Add and set incremental cycle collection phases. r=smaug 2013-12-03 10:47:46 -08:00
Andrew McCreight
744b82250b Bug 938407 - Null check FinishReportingCallback::mFinishDumping. r=froydnj 2013-12-02 13:11:43 -08:00
Jan Beich
235cf51f70 Bug 945046 - Implement private and vsize-max-contiguous reporters on FreeBSD. r=njn, r=glandium 2013-12-02 12:51:27 -05:00
Jan Beich
55c4f8b847 Bug 945046 - Move private, vsize-max-contiguous class implementation under their own ifdef. r=njn 2013-12-02 12:51:26 -05:00
Aaron Klotz
17bcff457a Bug 944529: Obtain HDD info for GRE path and Windows directory; r=froydnj 2013-12-02 10:41:44 -07:00
Ryan VanderMeulen
2866421e0f Merge m-c to inbound. 2013-12-02 10:34:41 -05:00
Carsten "Tomcat" Book
eaab8af805 merge mozilla-inbound to mozilla-central 2013-12-02 12:41:55 +01:00
Brian R. Bondy
47095a68bd Bug 944434 - Updates from Desktop launch Metro to perform the update. r=emtwo 2013-11-29 07:24:55 -05:00
Carsten "Tomcat" Book
caa77e8a92 merge fx-team to mozilla-central 2013-11-29 10:13:09 +01:00
Masatoshi Kimura
563353ee8f Bug 942402 - Add version test functions for Thunderbird. r=jimm 2013-12-03 00:01:48 +09:00
Marina Samuel
4d00f56497 Bug 934032 - Add View on Metro feature to Desktop Firefox in Australis. r=bbondy 2013-11-19 13:06:58 -05:00
Catalin Iacob
e961122fe2 Bug 819839 - Part 1 - Allow NS_StackWalk to be called during static initialization on Windows. r=ehsan 2013-11-29 16:08:43 +01:00
Nicholas Nethercote
d27c541046 Bug 936964 (part 3, attempt 2) - Make nsCycleCollector ref-counted. r=mccr8.
--HG--
extra : rebase_source : ebda496b8cba0464280eb0dc7bae9aca137e2e25
2013-11-25 15:57:53 -08:00
Nicholas Nethercote
b467b2a1c4 Bug 943660 (attempt 2) - Remove nsIMemoryReporter::name, because it's (a) unused and (b) a bad idea. r=mccr8.
--HG--
extra : rebase_source : 4381c3c424e34198b83c45fa0ac0d9a670bab2b8
2013-11-26 18:38:50 -08:00
Nicholas Nethercote
77419f6a47 Bug 936964 (part 7, attempt 2) - Make lots of classes report their own memory consumption, instead of using a separate reporter class. r=mccr8,sr=bz.
* * *
Bug 936964 (part 7b) - Fix a use-after-free found by ASan.

--HG--
extra : rebase_source : d38ab6b63e9d576773baf8e55fa4f7182c33915e
2013-11-07 16:35:30 +11:00
Ehsan Akhgari
c3970a73fb Backed out 9 changesets (bug 943660, bug 936964) because of ASAN use-after-free crashes on browser-chrome and mochitest-other
Backed out changeset 85486c4aa3d8 (bug 936964)
Backed out changeset 25312eb71998 (bug 936964)
Backed out changeset 6dbb8333960c (bug 936964)
Backed out changeset da6465ad476f (bug 936964)
Backed out changeset a87ffc992f38 (bug 936964)
Backed out changeset 4ae3a61182db (bug 936964)
Backed out changeset 34e9c3137804 (bug 936964)
Backed out changeset fd1459e71585 (bug 936964)
Backed out changeset 3e8a701d8bdc (bug 943660)

Landed on a CLOSED TREE

--HG--
rename : content/canvas/src/WebGLMemoryTracker.h => content/canvas/src/WebGLMemoryReporterWrapper.h
2013-11-27 20:05:00 -05:00
Nicholas Nethercote
78e4d6490d Bug 936964 (part 7) - Make lots of classes report their own memory consumption, instead of using a separate reporter class. r=mccr8,sr=bz.
--HG--
rename : content/canvas/src/WebGLMemoryReporterWrapper.h => content/canvas/src/WebGLMemoryTracker.h
extra : rebase_source : 611e8d35907959b163aeced1c4ffe1d265048fe6
2013-11-07 16:35:30 +11:00
Nicholas Nethercote
34fc4ee486 Bug 936964 (part 3) - Make nsCycleCollector ref-counted. r=mccr8.
--HG--
extra : rebase_source : f781c197b20354eda4622d436d5ef3429ce2481b
2013-11-25 15:57:53 -08:00
Nicholas Nethercote
e5c372ab44 Bug 943660 - Remove nsIMemoryReporter::name, because it's (a) unused and (b) a bad idea. r=mccr8.
--HG--
extra : rebase_source : f2ccff7972d7161e2290fd3db70463524c55f230
2013-11-26 18:38:50 -08:00
Bobby Holley
7a71089e5d Bug 911303 - Remove manual Destroy() routine from CycleCollectedJSRuntime. r=billm 2013-11-27 10:10:25 -08:00
Andrew McCreight
82aff86f1c Bug 937966 - Clean up scan safe assertion in Suspect. r=smaug 2013-11-26 17:30:46 -05:00
Andrew McCreight
a1a437b34d Bug 931738 - Remove nsPurpleBufferEntry from nsISupportsImpl.h. r=smaug 2013-11-26 14:29:59 -05:00
Ehsan Akhgari
a76144f248 Bug 942635 - Build dom/ipc in unified mode; r=bzbarsky 2013-11-26 11:39:19 -05:00
Benjamin Smedberg
041396b09d Bug 938794 - Annotate OOM size as infallible string or data structures abort, r=froydnj
--HG--
extra : rebase_source : f84278dfbba92c6d75458b525a559b6f8598500f
2013-11-25 15:06:17 -05:00
Wes Kocher
2db30ae116 Merge fx-team to m-c 2013-11-21 19:16:50 -08:00
Ehsan Akhgari
0b5494715b Bug 941739 - Print the current process and thread information on XPCOM assertions and string leaks stats; r=froydnj 2013-11-21 14:17:35 -05:00
Chris Kitching
7144e8c767 Bug 913985: Part 5 - Refactor the Bridge to use the generated code. r=kats 2013-11-12 10:41:01 -08:00
Carsten "Tomcat" Book
9f47cb96d7 merge mozilla-inbound to mozilla-central 2013-11-21 14:20:21 +01:00
Nicholas Nethercote
c7b9e03143 Bug 940069 - Backout a temporary debugging printf that runs on --enable-valgrind builds only, because it has served its purpose. r=me. 2013-11-20 00:27:00 -08:00
Alexander Surkov
7bb2451052 Bug 935698 - isolate nsIAccessibleValue implementation into separate class, r=tbsaunde 2013-11-19 16:01:15 -05:00