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
Mike Hommey
bf60896454
Bug 943728 - Replace double quotes with single quotes in Makefiles (or remove them when it makes sense). r=mshal
2013-12-03 06:34:21 +09: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
Ehsan Akhgari
76f23ad063
Bug 945118 - Build more of XPCOM in unified mode; r=glandium
2013-12-01 10:47:52 -05: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
Makoto Kato
ed24a20324
Bug 942645 - Remove old OS_RELEAE reference. r=glandium
2013-11-29 13:52:22 +09:00
Masatoshi Kimura
563353ee8f
Bug 942402 - Add version test functions for Thunderbird. r=jimm
2013-12-03 00:01:48 +09:00
Landry Breuil
e9ae7af602
Bug 944410 - add missing #include <stdarg.h> for va_list on OpenBSD after bug 942483 r=bgirard
2013-11-30 13:48:34 +01: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
Mike Hommey
9245936f8b
Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal
2013-11-27 22:55:07 +09: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
Mike Hommey
2b828323f2
Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
...
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09: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
Mike Hommey
d210f8ff00
Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal
2013-11-28 13:08:16 +09: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
Dan Minor
69e7d3a78d
Bug 943390 - Unit test TestTArray.cpp fails on Windows XP opt builds; r=froydnj
2013-11-29 12:48:08 -05:00
Bobby Holley
7a71089e5d
Bug 911303 - Remove manual Destroy() routine from CycleCollectedJSRuntime. r=billm
2013-11-27 10:10:25 -08:00
Jacek Caban
db001e45e0
Bug 928351 - Char16.h and xpcom/strings/public parts r=ehsan,Waldo
2013-11-27 14:40:54 +01:00
Markus Stange
f0c633ccf9
Bug 924103 - Add a FilterDescription data structure and code that can create FilterNodes from it. r=roc
2013-11-27 12:25:28 +01:00
Mike Hommey
c35f2d3106
Bug 943197 - Remove useless -DIMPL_LIBXUL. r=mshal
2013-11-27 17:13:05 +09: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
Daniel Holbert
621989b424
Bug 943238: Mark xpcom/io as FAIL_ON_WARNINGS. r=froydnj
2013-11-26 09:53:54 -08:00
Daniel Holbert
09205b59c4
Bug 943391: Use MOZ_THIS_IN_INITIALIZER_LIST to silence MSVC warning C4355 in nsPipe3.cpp. r=froydnj
2013-11-26 09:42:59 -08:00
Daniel Holbert
388f79a1c8
Bug 943235: undef LOG at the end of nsStorageStream.cpp, to prevent it from polluting other .cpp files and triggering "redefined" build warnings when we build in unified mode. r=froydnj
2013-11-26 09:42:58 -08:00
Ehsan Akhgari
60735d7532
Bug 943035 - Use fallible allocation in nsScriptableInputStream::Read; r=bsmedberg
2013-11-26 11:52:48 -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
Chris Peterson
842152c206
Bug 942400 - Fix -Wunused-variable warning in xpcom/io/nsMultiplexInputStream.cpp. r=nfroyd
2013-11-22 19:39:47 -08:00
Birunthan Mohanathas
0816e609ee
Bug 784739 - Switch from NULL to nullptr in miscellaneous directories; r=ehsan
...
--HG--
extra : rebase_source : 8ace754e117a12e2599f5a90030f13a3a7064fed
2013-11-25 14:02:47 -05:00
Jan Beich
b25abb6817
Bug 942488 - Don't report pseudo-stacks without SPS profiler. r=nchen
2013-11-25 09:24:00 -05:00
Benoit Girard
f8fd653be7
Bug 942483 - Port paint-dumping to android/b2g. r=gal
2013-11-23 17:44:18 -05:00
Ehsan Akhgari
5a56056193
Bug 942489 - Deunify more files that are caught by bug 941854; r=BenWa
2013-11-24 01:29:24 -05:00
Mike Hommey
b39418250a
Bug 941450 - Add some GENERATED_FILES to moz.build. r=gps
2013-11-22 08:16:18 +09:00
Jim Chen
9d818e8444
Bug 932865 - Collect thread hang stats in BackgroundHangMonitor; r=froydnj
2013-11-22 14:17:31 -05:00
Jim Chen
c9e25f4004
Bug 932865 - Record inactive thread hang stats inside telemetry; r=vladan
2013-11-22 14:17:31 -05:00
Jim Chen
4b4ea979e2
Bug 932865 - Add way for telemetry to iterate over active threads; r=froydnj
2013-11-22 14:17:31 -05:00
Jim Chen
8a6972b958
Bug 935092 - Add ThreadStackHelper to get a thread's pesudo-stack; r=BenWa
2013-11-22 14:17:30 -05:00
Jim Chen
1822d440f4
Bug 909974 - Stop the monitor thread when the BackgroundHangManager instance is destroyed; r=froydnj
2013-11-22 14:17:30 -05:00
Jim Chen
9ec3326fc9
Bug 909974 - Let monitor thread detect hangs in addition to permahangs; r=froydnj
2013-11-22 14:17:29 -05:00
Jim Chen
c64112dbde
Bug 909974 - Add a hang monitor for background threads; r=froydnj
2013-11-22 14:17:29 -05:00
Ed Morley
dd12c93265
Backed out changeset 1eb6ceed2cda (bug 938437) on suspicion of causing WinXP debug jetpack failures on a CLOSED TREE
2013-11-22 16:00:32 +00:00
Ed Morley
0e1036028c
Backed out changeset c30371a66429 (bug 941450)
2013-11-22 15:59:22 +00:00
Ryan VanderMeulen
ae7c01efb4
Merge m-c to inbound.
2013-12-06 16:13:37 -05:00
Bobby Holley
f5cb1b3082
Bug 937317 - Implement basic script settings stack machinery. r=bz
2013-12-06 12:01:41 -08:00
Chris Peterson
d98938d032
Bug 945613 - Part 3: #ifdef pragma for gcc >= 4.7.0. r=ehsan
2013-12-06 09:47:28 -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
Mike Hommey
f6b8ef93a4
Bug 941450 - Add some GENERATED_FILES to moz.build. r=gps
2013-11-22 08:16:18 +09:00
Mike Hommey
99fc7c7312
Bug 938437 - Replace nsStaticXULComponents.cpp with smart use of sections. r=bsmedberg,irc-r=decoder,r=nfroyd
2013-11-19 13:45:31 +09:00
Masatoshi Kimura
b3fb84e281
Bug 925599 - Replace GetVersion() uses. r=bsmedberg
2013-11-22 12:35:42 +09:00
Wes Kocher
e634acaaaf
Merge m-c to inbound
2013-11-21 19:18:18 -08: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
Ryan VanderMeulen
bef0cc03d8
Merge m-c to fx-team.
2013-11-21 15:55:03 -05:00
Ryan VanderMeulen
94ddc2e1d9
Merge m-c to inbound.
2013-11-21 11:37:10 -05: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
Jim Blandy
f0a0296f91
Bug 896100: Convert all uses of OldMove and MoveRef to true rvalue references and the modern Move and Forward. r=luke, r=waldo
2013-11-19 09:05:36 -08:00
ISHIKAWA, Chiaki
f4e80246c7
Bug 936987 - Propagate the error code of PR_Close() against a file under CIFS-share under Linux. r=froydnj
...
(Network error causes the file share to fail, and read()/close() and possibly write() can return network-related error. close() error was not caught before.)
2013-11-19 14:56:58 -05:00
Andrew McCreight
319fed2c0e
Bug 935721, part 10 - Separate nsCycleCollector_collect and nsCycleCollector_scheduledCollect. r=smaug
2013-11-20 14:35:17 -08:00
Andrew McCreight
65d5a7ad90
Bug 935721, part 9 - Move mPtrToNodeMap into GCGraph. r=smaug
...
With ICC, we may have to remove things from the graph after we have finished building
the graph, so move the mapping to graph addresses into the graph itself to create a
more self-contained structure.
2013-11-20 14:35:17 -08:00
Andrew McCreight
06ae914761
Bug 935721, part 8 - Add a reference to the graph to the graph builder. r=smaug
...
This moves towards letting the CC graph outlive the builder.
2013-11-20 14:35:16 -08:00
Andrew McCreight
77917883a8
Bug 935721, part 7 - Inline PrepareForCollection into BeginCollection. r=smaug
...
PrepareForCollection is trivial now, so just inline it.
2013-11-20 14:35:16 -08:00
Andrew McCreight
3eed280708
Bug 935721, part 5 - Invert the control flow of CycleCollectNow's pre- and post-collection work, add CCResults as a field on the CC. r=smaug
...
nsJSEnvironment::CycleCollectNow does work before and after a CC runs. With ICC, nsJSEnv won't
know where in the CC when a CC is about to begin or end, so this patch reorganizes that work
into two separate callback hooks. This requires adding a new struct, CycleCollectorStats, to
hold data nsJSEnv needs between the two calls.
Rather than trying to pass around a pointer to a results structure, this patch just adds
it to the nsCycleCollector struct, and always stores them. The results are passed back
to the end CC callback.
2013-11-20 14:35:16 -08:00
Andrew McCreight
2356ab9a2d
Bug 935721, part 4 - Allocate white nodes array in CollectWhite. r=smaug
...
The white nodes array is only used in CollectWhite, so just allocate it there.
2013-11-20 14:35:16 -08:00
Andrew McCreight
df690c6812
Bug 935721, part 3 - Use RAII to set mScanInProgress, hoist out MarkRoots and ScanRoots. r=smaug
...
With ICC, mScanInProgress gets set and cleared a bunch of times so add an RAII class to turn
it on when we're doing stuff and clear it when we're not.
With that in place, we can easily move MarkRoots and ScanRoots out of BeginCollection
in preparation for making them separate phases in ICC.
2013-11-20 14:35:16 -08:00
Andrew McCreight
c9b8e24ea3
Bug 935721, part 2 - Allocate GCGraphBuilder on the heap. r=smaug
...
With ICC, the graph builder must persist across invocations of the CC,
so store it on the heap.
2013-11-20 14:35:15 -08:00
Andrew McCreight
7b822b21b0
Bug 935721, part 1 - Store the listener pointer on the nsCycleCollector data structure. r=smaug
...
With ICC, the listener must persist across invocations of the CC, so store it on the CC.
2013-11-20 14:35:15 -08:00
Benjamin Smedberg
4e3ab778f0
Bug 672843 part D - make NS_ERROR_INVALID_POINTER an alias of NS_ERROR_INVALID_ARG, r=froydnj
2013-11-19 16:27:37 -05:00
Benjamin Smedberg
9bfc4e98e3
Bug 672843 part C - convert most of XPCOM except for xpcom/tests, r=vdjeric
2013-11-19 16:27:37 -05:00
Benjamin Smedberg
f72af0bb16
Bug 672843 part B - Remove NS_ENSURE_PROPER_AGGREGATION, r=froydnj
2013-11-19 16:27:36 -05:00
Benjamin Smedberg
5f71d47853
Bug 672843 part A - Create the new macro NS_WARN_IF and deprecate NS_ENSURE_* in favor of the explicit warning/return style. Also localize each macro so that it's debug and non-debug versions are local in the file, because that makes it easier for new contributors to understand. r=froydnj sr=jst
2013-11-19 16:27:36 -05:00
Ehsan Akhgari
6053a45785
Follow-up to bug 936912: Fix a compiler warning
2013-11-20 16:01:59 -05:00
Ehsan Akhgari
90fa786c75
Bug 941866 - Exclude files which rely on the known bad patterns from unified builds; r=BenWa
2013-11-21 16:36:59 -05:00
Ehsan Akhgari
6f773eb0a9
Bug 941405 - Remove the usages of the register keyword from XPCOM; r=froydnj
2013-11-21 10:42:40 -05:00
Ryan VanderMeulen
6a90626b1d
Backed out changeset 4887ddabba31 (bug 939231) for mochitest hangs.
...
CLOSED TREE
2013-11-21 09:39:38 -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
Ryan VanderMeulen
f613a3dd00
Merge inbound to m-c.
2013-11-19 13:21:57 -05:00
James Kitchener
fcb5bd2a1d
Bug 936886 - Account for possibility of non-null terminated strings in nsWindowsRegKey::ReadStringValue(). r=dmajor
2013-11-19 09:09:41 -05:00
Nicholas Nethercote
6f6ecd89ad
Bug 940069 - Land a temporary debugging printf that runs on --enable-valgrind builds only, because Valgrind runs aren't available on tryserver. r=me.
2013-11-18 23:13:15 -08:00
Mike Hommey
a65383e1e9
Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
...
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
8ceb917350
Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps
2013-11-19 11:48:10 +09:00
Mike Hommey
e42fd39b2e
Bug 939071 - Kill SHORT_LIBNAME. r=ted
2013-11-19 11:47:47 +09:00