Commit Graph

1642 Commits

Author SHA1 Message Date
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
Andrew McCreight
957e5efc44 Bug 901597, part 2 - Add environment var to CC log only main or worker threads. r=smaug 2014-02-19 13:27:15 -08:00
Andrew McCreight
907bd71895 Bug 901597, part 1 - Move CC logging logic into nsCCParams. r=smaug 2014-02-19 13:27:14 -08:00
Andrew McCreight
f14269e5fc Bug 972940 - Rename XPCOM_CC_ env vars to MOZ_CC_. r=smaug 2014-02-19 13:27:14 -08:00
Eric Rahm
ac835c5e28 Bug 972170 - Add zram reporting to about:memory. r=njn 2014-02-19 11:08:38 -08:00
Brian Hackett
cae987d2a2 Bug 964059 - Share atoms compartment/zone between multiple runtimes, r=billm,bent. 2014-02-19 09:02:13 -07:00
Daniel Holbert
84283bddce back out 3a8893b28489 (bug 712939) and 39adab158c17,16add78c43e3,37193db7e15b (bug 712873), for build bustage. 2014-02-19 00:15:51 -08:00
Chris Peterson
ae4ab82a1d Bug 712939 - Replace JS_STATIC_ASSERT with static_assert outside js/ directory. r=mccr8 2014-02-17 23:56:19 -08:00
Justin Shrake
cbce9ed07f Bug 972038 - Replace calls to GetMessageMoz with ToString to save callers from having to convert to UTF-8. r=jimm 2014-02-18 09:47:54 -05:00
Ehsan Akhgari
7b16802ce4 Bug 973142 - Get rid of the MOZILLA_INTERNAL_API makefile variable; r=glandium
It's just as easy to directly set the preprocessor macro in the moz.build
files.  Using this variable doesn't really buy us anything.

This patch also removes unused code from rdf/tests/dsds.
2014-02-18 01:56:51 -05:00
Nicholas Nethercote
e66386ee26 Bug 956199 - Fix style of xpcom/base/nsMemoryReporterManager.{h,cpp}. r=bsmedberg.
--HG--
extra : rebase_source : 79a8053c97ecb0786f0a722838f66fc85c5e1368
2014-01-02 19:19:32 -08:00
Masatoshi Kimura
e5fc47840c Bug 970483 - Fix the logic to determine the pre-RTM Windows 7. r=bbondy 2014-02-12 23:49:06 +09:00
Andrew McCreight
f3bf111fef Bug 966359 - Prevent FreeSnowWhite reentrance. r=smaug 2014-02-11 14:56:44 -08:00
Masatoshi Kimura
7638c93a95 Bug 970483 - Part 1: Introduce IsWindowsBuildOrLater() and IsWin7RTMOrLater(). r=bbondy 2014-02-12 06:01:29 +09:00
Masatoshi Kimura
9306836991 Backed out changeset d7d447cac91b (bug 969762) for tp5 regression. 2014-02-12 06:01:29 +09:00
Mike Hommey
9ff8bb64aa Bug 969800 - Fix nsMemoryReporterManager::GetVsize for !HAVE_VSIZE_AND_RESIDENT_REPORTERS and add GNU/kFreeBSD support to nsMemoryReporterManager. r=njn 2014-02-11 10:43:41 +09:00
Jeff Walden
f66c97b3c4 Bug 969165 - Convert Atomic<T> where T != bool but is used as a bool over to Atomic<bool>, now that it's supported, in xpcom/. r=froydnj
--HG--
extra : rebase_source : 4b4e47e4246c3764f1b8d50a308b7a717c53a865
2014-02-06 22:05:24 -08:00
Ehsan Akhgari
b870bb3fe9 Bug 969757 - Remove the dead code in our tree which pretends to support OS/2; r=roc,mcmanus,gps,jorendorf,bsmedberg sr=bsmedberg 2014-02-10 17:57:01 -05:00
Masatoshi Kimura
84b0ee5c63 Bug 969762 - Support non-ASCII dump() messages on Windows. r=jimm 2014-02-11 05:50:16 +09:00
Neil Rashbrook
c8132dbb0b Bug 969324 Remove unnecessary ReporterEnumerator r=njn 2014-02-10 19:26:08 +00:00
Thomas Zimmermann
0b22d9d966 Bug 968849: Fix GCC warnings about uninitialized variables, r=froydnj 2014-02-06 17:57:38 +01:00
Nicholas Nethercote
90b8a00e9d Bug 903131 - Add save GC/CC logs buttons to about:memory. r=njn,mccr8.
--HG--
extra : rebase_source : 56af9b89675394b5a219f699b96c1d26c00adc38
2014-01-31 14:43:08 -08:00
Chris Peterson
91f7b1bbc7 Bug 965693 - Remove annoying "Printing XUL documents is not supported" error dialog. r=roc 2014-01-29 20:40:34 -08:00
Birunthan Mohanathas
e81a8f702d Bug 828300 - Replace NS_ARRAY_LENGTH with mozilla::ArrayLength/MOZ_ARRAY_LENGTH. r=ehsan 2014-01-30 13:26:54 -05:00
Nathan Froyd
35cde1421e Bug 964415 - add include guards to nsMemoryReporterManager.h; r=njn 2014-01-27 14:54:37 -05:00
Bobby Holley
1fc0abe0bc Bug 958324 - Remove same-compartment security wrappers for WNs. r=peterv,r=mrbkap
We've fixed Components, and SOWs are new-binding only. Youpie!
2014-01-21 08:26:40 -08:00
Andrea Marchesini
06f3df72fa Bug 958816 - UUIDs updated to make strings in nsIStackFrame API sane CLOSED TREE 2014-01-20 18:47:35 +01:00
Andrea Marchesini
db2fa96fac Bug 958816 - Make strings in nsIStackFrame API sane, r=bz 2014-01-20 17:51:41 +01:00
Nathan Froyd
200e32e48e Bug 960700 - delete incorrect comment from nsStackWalk.cpp; r=ehsan 2014-01-16 14:53:04 -05:00
Ryan VanderMeulen
4e06172283 Backed out changeset 965cf4cbedc8 (bug 958816) for mochitest crashes.
CLOSED TREE
2014-01-17 10:20:05 -05:00
Andrea Marchesini
ab79c85864 Bug 958816 - Make strings in nsIStackFrame API sane, r=bz 2014-01-17 15:24:03 +01:00
Nathan Froyd
fdc7c86804 Bug 901022 - write to MOZ_TRACE_FILE when the visual event tracer is stopped; r=honzab
DONTBUILD because NPOTB
2013-07-25 12:21:58 -04:00
Olli Pettay
a090c1f030 Bug 958315 - Suspect JS things released by dying C++ objects in the next CC, r=mccr8 2014-01-14 22:23:59 +02:00
Jed Davis
9b8946ab38 Bug 948204 - Add pmem regions to the system memory report. r=njn 2014-01-14 10:03:31 -05:00
Steven Michaud
7e5b4408b4 Bug 956310 - DMD builds fail on Mac OS X. r=bgirard 2014-01-08 17:06:22 -06:00
Marina Samuel
035f74946d Bug 950986: Use ToDouble() to convert version to a double independent of locale. r=doug.turner 2014-01-08 12:22:24 -05:00
Andrew McCreight
1aa561ef0f Bug 956080 - Rename BeginCycleCollection to TraverseRoots. r=smaug 2014-01-07 17:33:47 -08:00
Boris Zbarsky
dd2f4ef162 Bug 932837 part 2. Create a refcounted object to manage the lifetime of a JS::StackDescription. r=mccr8, terrence 2014-01-07 19:53:17 -05:00
Birunthan Mohanathas
c293ca84b8 Bug 784739 - Switch from NULL to nullptr in remaining directories; r=ehsan
--HG--
extra : rebase_source : 1ff19b2c8fd0e77fa8e822f5007a9fa3a6b6d474
2014-01-06 10:06:04 -05:00
Jeff Walden
b01c238639 Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer.  (Examples are provided in NullPtr.h comments.)  The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes.  This problem is unavoidable without true nullptr.  Currently, the only valid use for NullptrT is believed to be in operator overloads.  All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.

--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Ehsan Akhgari
73dc4b008e Bug 884368 - Part 1: Add a memory reporter for AudioContexts; r=roc,njn 2014-01-04 13:15:41 -05:00
Ehsan Akhgari
ebd358dfd7 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -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 PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Ehsan Akhgari
6d52f7f2e0 Bug 758992 follow-up - Mark DoNothingCallback final to avoid compiler warnings; blanket-r=bzbarsky 2014-01-03 09:54:32 -05:00
Nicholas Nethercote
1f49ef8fa9 Bug 955942 (part 3) - Merge the heap reporters. r=mccr8.
--HG--
extra : rebase_source : f836b1b2de9c850fa3d956bf6ef92a7c6c504fce
2014-01-02 15:19:08 -08:00
Nicholas Nethercote
82b05b710d Bug 955942 (part 2) - Remove MemoryUniReporter. r=mccr8.
--HG--
extra : rebase_source : 9d70016cb19637ffece6409a184bf41d574cc6b4
2013-12-07 22:09:10 -08:00
Nicholas Nethercote
9505172caf Bug 955942 (part 1) - Remove unnecessary nsIMemoryReporter qualifiers from UNITS_* and KIND_* constants. r=mccr8.
--HG--
extra : rebase_source : f760568c08af03d9fec316bf95e7d4388078a03d
2013-12-11 11:59:39 -08:00
Andrew McCreight
b6ece55812 Bug 950959 - Rename scheduled cycle collector stuff to slice. r=smaug 2014-01-01 11:00:35 -08:00
Andrew McCreight
5b5e6a9500 Bug 950949 - Run forgetSkippable per CC not per slice. r=smaug 2014-01-01 11:00:35 -08:00
Ms2ger
fe059e78f7 Bug 950130 - Move more INCLUDES / LOCAL_INCLUDES to moz.build; r=mshal 2013-12-31 10:06:11 +01:00
Andrew McCreight
f83384339e Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-22 09:58:19 -05:00
Ted Mielczarek
6ce69a9951 bug 918389 - move XPCOM abort messages into separate crash annotations. r=bsmedberg
--HG--
extra : rebase_source : d1762cb08c795020e2ca7612b903cd1f3d5ade50
2013-12-20 10:11:16 -05:00
Ryan VanderMeulen
383add0e97 Backed out changesets ccdc3d4f4571, 4dcc91e771e3, 0ae14946314b, and 94d22ab0b17f (bug 937960) for Windows 7 debug xpcshell failures. 2013-12-19 16:57:55 -05:00
Ehsan Akhgari
fedbdf04d7 Bug 950856 - Fail the build if you attempt to use NS_StackWalk on Windows where it won't work; r=froydnj,BenWa 2013-12-18 15:03:11 -05:00
Isura Edirisinghe
1542439ab5 Bug 676907 - Refactor (replace) calls to Gestalt because it is deprecated in OS X 10.8 and will not work in after 10.9. r=BenWa 2013-12-19 11:42:19 -05:00
Andrew McCreight
380df2f061 Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-18 21:22:55 -08:00
Ryan VanderMeulen
75c2b59eb5 Backed out changesets b03bd1170d1c, 419615a1195d, a1b699b80442, and 524c573fd8a6 (bug 937960) for Win7 debug xpcshell orange. 2013-12-18 19:04:11 -05:00
Ryan VanderMeulen
b9f37d8887 Backed out changeset fc0610680d3b (bug 950856) for Windows bustage.
CLOSED TREE
2013-12-18 16:01:44 -05:00
Ehsan Akhgari
f41d2856cd Bug 950856 - Fail the build if you attempt to use NS_StackWalk on Windows where it won't work; r=froydnj,BenWa
--HG--
extra : rebase_source : 914250c939e4666f4a8630f7e9e57e466b669259
2013-12-18 15:03:11 -05:00
Andrew McCreight
c6cd1b5b90 Bug 937960, part 3 - Pass in a small time budget with ICC. r=smaug 2013-12-18 11:42:16 -08:00
Andy Wingo
41ba9c9473 Bug 951483 - Add back nsCycleCollector::ShutdownCollect assertion that was mistakenly removed in bug 945813. r=mccr8 2013-12-18 11:01:32 +01:00
Nils Maier
bf1452f63e Bug 950391 - Add nsIMemoryReporterManager.unregisterStrongReporter. r=njn
Also do not allow to register non-native components as weak reporters.
2013-12-18 13:00:03 -05:00
Andrew McCreight
a8a41fffec Bug 937818, part 4 - Exceeded refcount nodes should already be black. r=smaug
Due to graph mutation during an incremental cycle collection, objects in the CC graph
may end up with more things pointing to them than they have a ref count. However, these
objects should never become garbage.
2013-12-17 19:29:57 -08:00
Andrew McCreight
d8b513724e Bug 937818, part 3 - Add ScanIncrementalRoots(). r=smaug
Any object that has been stored away somewhere in the middle of incremental graph
building must be treated as live, because we can't trust that the CC graph has
accurate information about it. If such an object is truly garbage, we'll unlink it
in the next cycle collection instead.
2013-12-17 19:29:57 -08:00
Andrew McCreight
5bbea5ab96 Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-17 19:29:57 -08:00
Carsten "Tomcat" Book
72465c7d55 Backed out changeset 261091719842 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:51 +01:00
Carsten "Tomcat" Book
94d78eb137 Backed out changeset a9715a3b0e13 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:31 +01:00
Carsten "Tomcat" Book
c0f42c8fcf Backed out changeset ae01d2862600 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:10 +01:00
Andrew McCreight
1793c5a978 Bug 937818, part 4 - Exceeded refcount nodes should already be black. r=smaug
Due to graph mutation during an incremental cycle collection, objects in the CC graph
may end up with more things pointing to them than they have a ref count. However, these
objects should never become garbage.
2013-12-16 21:30:54 -08:00
Andrew McCreight
d4062e027d Bug 937818, part 3 - Add ScanIncrementalRoots(). r=smaug
Any object that has been stored away somewhere in the middle of incremental graph
building must be treated as live, because we can't trust that the CC graph has
accurate information about it. If such an object is truly garbage, we'll unlink it
in the next cycle collection instead.
2013-12-16 21:30:53 -08:00
Andrew McCreight
4b4868e59c Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-16 21:30:53 -08:00
Nicholas Nethercote
af95c9e20c Bug 945973 (part 4) - Add SystemMemoryReporter, which presents Linux-specific, system-wide memory measurements taken from the OS. r=glandium.
--HG--
extra : rebase_source : 032d1d2944b790ac9e9e4d7f18c8ac9d79858ef3
2013-12-04 19:32:50 -08:00
Nicholas Nethercote
1b4f5fb9ca Bug 945973 (part 2) - Don't complain if there aren't any "explicit" reports for a process. r=mccr8.
--HG--
extra : rebase_source : 05129260b8a3e7cfbdadcecffe4c18715254323c
2013-12-03 20:19:41 -08:00
Nicholas Nethercote
7ab82a59e3 Bug 945973 (part 1) - Remove about:memory's is-a-sentence description check. r=mccr8.
--HG--
extra : rebase_source : bf47145a953a23b73fa1e7c441b695ffeceafbb8
2013-12-03 20:10:59 -08:00
Wes Kocher
a8ec671341 Backed out changeset ef0eeaec74a8 (bug 949183) on the theory that it somehow broke every single b2g test on a CLOSED TREE 2013-12-16 18:27:43 -08:00
Sean Stangl
0a79faf943 Bug 949183 - Fix jsid static constructor explosion. r=Waldo 2013-12-16 14:40:05 -08:00
Trevor Saunders
907dfc4528 bug 949821 - use MOZ_UTF16 more and NS_LITERAL_STRING less r=froydnj 2013-12-12 20:50:01 -05:00
Mike Hommey
3325256d97 Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09:00
Bobby Holley
f9aa149cb5 Bug 937317 - Implement basic script settings stack machinery. r=bz 2013-12-11 17:51:57 -08:00
Jan Beich
2727a2615b Bug 948833 - Explicitly include <algorithm> for std::max on FreeBSD. r=njn 2013-12-11 10:35:33 -05:00
Andrew McCreight
74b0e52065 Bug 948686 - Remove unused variable declaration. r=njn 2013-12-11 10:35:13 -05:00
Ryan VanderMeulen
6fb3114a62 Merge m-c to inbound. 2013-12-10 15:48:16 -05:00
Ryan VanderMeulen
e6e2bad3d0 Merge fx-team to m-c. 2013-12-10 15:39:40 -05:00
Marina Samuel
25f5738d76 Bug 945842: Show Metro bookmarks folder in Windows 8 only. r=bbondy 2013-12-10 13:42:16 -05:00
Carsten "Tomcat" Book
d1456b8d0e Backed out changeset 85196889c598 (bug 945042) PGO Test Bustage 2013-12-09 13:00:59 +01:00
Carsten "Tomcat" Book
488d65b1a9 merge mozilla-inbound to mozilla-central 2013-12-09 09:02:29 +01:00
Mike Hommey
eaa22cd1f1 Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09:00
Birunthan Mohanathas
759ab69b0a Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -05:00
Nicholas Nethercote
1e79a74289 Bug 947802 (part 2) - Replace enumerateReporters() with getReportsForThisProcess(). r=mccr8.
--HG--
extra : rebase_source : 1c70e838e3600745f69c5772a084398f78d4c477
2013-12-01 16:29:37 -08:00
Nicholas Nethercote
7b9f6814c3 Bug 947802 (part 1) - Inline DumpReport(). r=mccr8.
--HG--
extra : rebase_source : f5c8a655e88dc7641c2a9971d1174b0d689bf3b4
2013-12-01 16:14:26 -08:00
Nicholas Nethercote
bdfbbf7bcd Bug 947798 (part 2) - Remove MemoryMultiReporter, because it's no longer helpful. r=mccr8.
--HG--
extra : rebase_source : f6f74de69d8c1d79d38b84b19dff5439efc41075
2013-12-07 21:39:47 -08:00
Nicholas Nethercote
0b9a804eb0 Bug 947798 (part 1) - Rename NS_MEMORY_REPORTER_MALLOC_SIZEOF_FUN as MOZ_DEFINE_MALLOC_SIZE_OF. r=mccr8.
--HG--
extra : rebase_source : ec09d4c31264c15befb020375bf001a1ad1df6b8
2013-12-07 21:38:32 -08:00
Benjamin Smedberg
df726932bc Bug 946877 followup - move nsDebugImpl.cpp out of unified sources so that it relaly isn't part of PGO, r=ted 2013-12-10 12:26:53 -05:00
Andrew McCreight
f2438191d3 Bug 947719 - Call Checkpoint on every slice in nsCycleCollector::MarkRoots. r=smaug 2013-12-10 08:07:20 -08:00
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