Justin Lebar
1cfc0ff873
Bug 903420 - Two fixes to jemalloc's memory reporters. r=glandium
...
1) We were counting "dirty" pages in "waste", when we shouldn't have
been. This was causing the assertion at the end of jemalloc_stats()
which checks that mapped memory is greater than committed memory to
fail.
2) jemalloc_stats used stats_chunks.curchunks to measure the number of
mapped pages. This was problematic for two reasons.
a) stats_chunks.curchunks was not locked when it was modified in
chunk_{de}alloc(), so its value could be garbage.
b) Even if it had been locked properly, it was possible for an
allocation to occur during a call to jemalloc_stats which would
cause the measured amount of allocated memory to exceed the
measured amount of mapped memory, tripping the assertion we
tripped in (1).
We fixed these issues by deleting stats_chunks entirely, and by
introducing huge_mapped, which measures the amount of memory mapped
by huge allocations (and is properly protected by huge_mtx).
We now measure the amount of mapped memory by adding huge_mapped and
each arena's mapped memory, and we do this in such a way that even if
an allocation occurs during our call to jemalloc_stats, we'll still
get a consistent result (where mapped >= committed).
2013-08-15 11:15:04 -07:00
Mike Hommey
f33621ca8f
Bug 901211 - Don't use static page size on ia64, sparc and mips. r=jlebar
2013-08-05 09:10:35 +09:00
Ms2ger
a4e67abf5e
Bug 897921 - Remove some dead assignments in makefiles; r=mshal
2013-08-02 09:03:55 +02:00
Justin Lebar
e67b738ee5
Bug 898558 - Rework jemalloc_stats so it exposes how much memory is used for bookkeeping. r=glandium
...
This patch also gets rid of the redundant "committed" entry, so now
there's no confusion as to which entries overlap.
--HG--
extra : rebase_source : 429f3d44011f02dda43aa10b077c917c4d02fe50
2013-07-29 09:10:53 -07:00
Brian O'Keefe
f11b19a860
Bug 875934 - Move LIBRARY_NAME to moz.build (batch #2 ); r=mshal
...
--HG--
extra : rebase_source : 555b28e5c3412ffc210c60b6fe2fee6f053fd587
2013-06-18 08:13:42 -04:00
Joey Armstrong
05956ba0cd
bug 870406: move CSRCS to mozbuild (config batch #2 ) r=mshal
2013-06-04 11:08:44 -04:00
Mike Shal
df7deac25b
Bug 846634 - Part 2: Move EXPORTS to moz.build; r=joey
2013-04-16 15:24:43 -04:00
Kyle Machulis
72a717a860
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
2013-04-01 11:36:59 -07:00
Kyle Machulis
43628a7867
Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot
2013-03-29 15:12:58 -07:00
Kyle Machulis
334c0800cf
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
...
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Steve Singer
e8837eed1a
Bug 851859 - Set jemalloc's page size based on the architecture instead of assuming it's always 4kb. r=jlebar
2013-03-27 11:32:34 -04:00
Mike Shal
7ecea60097
Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps
2013-03-19 11:47:00 -07:00
Gregory Szorc
282edab58a
Bug 784841 - Part 18c: Convert /memory, /mfbt, /mozglue; r=ted f=Ms2ger
2013-02-25 12:47:17 -08:00
Mike Hommey
e9c6d8bfe1
Bug 804303 part 2 - Add ability to dynamically replace or supplement jemalloc implementation. r=jlebar,r=khuey
2012-12-07 09:32:24 +01:00
Mike Hommey
c51f5d814d
Bug 804303 part 1 - Cleanup how the mozjemalloc/jemalloc3 glue is set up, attempting to make it clearer. r=jlebar,r=khuey
...
--HG--
rename : memory/build/extraMallocFuncs.c => memory/build/jemalloc_config.c
rename : memory/mozjemalloc/jemalloc.h => memory/build/mozmemory.h
rename : memory/build/extraMallocFuncs.c => memory/build/mozmemory_wrap.c
2012-12-07 09:32:24 +01:00
Gabriele Svelto
192db38ba4
Bug 811740 - Reduce the amount of unused dirty pages kept by jemalloc to 1MiB in B2G. r=jlebar, r=glandium
2012-11-28 17:03:35 +01:00
Gabriele Svelto
f39e18e483
Bug 805855 - Add an extra function to jemalloc to free dirty unused pages. r=glandium
2012-11-08 20:06:50 +01:00
Rafael Ávila de Espíndola
7330a180a0
Bug 807112 - change MOZ_EXPORT_API and MOZ_IMPORT_API to not take the type. r=Waldo.
2012-10-31 18:18:12 -04:00
Jan Beich
7b2766d86d
Bug 788955 - Mark some jemalloc functions as weak on BSDs. r=glandium
2012-10-17 16:38:43 +02:00
Jan Beich
90b1515739
Bug 788955 - Without --enable-jemalloc detect and use jemalloc3 in libc. r=glandium
2012-10-17 16:36:49 +02:00
Justin Lebar
db3de0d55d
Bug 787675 - When jemalloc hits a fatal assertion, crash within a new stack frame, in the hopes of making the crashstats more understandable. r=glandium
2012-09-03 22:01:24 -04:00
Michael Wu
388d00feee
Bug 780287 - Don't wrap jemalloc on gonk, r=glandium
2012-08-06 16:22:26 -04:00
Mike Hommey
70d7c821af
Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted
2012-08-04 20:26:44 +02:00
Jan Beich
61da184ec9
Bug 778058 - Don't #define _malloc_message to malloc_message in jemalloc: FreeBSD's jemalloc-3.0.0 exports malloc_message (with different arguments) in stdlib.h. r=jlebar
2012-07-29 10:54:44 -04:00
Mike Hommey
ad1fa9fabe
Bug 772423 - Hook mozjemalloc's abort(). r=jlebar
2012-07-11 16:55:39 +02:00
Justin Lebar
1132bc2fa6
Bug 772338 - Abort when VirtualAlloc fails in jemalloc's pages_commit routine. r=glandium
2012-07-10 09:25:25 -04:00
Justin Lebar
19d1ccf54a
Bug 766250 - Part 2: Split MOZ_TEMP_INVESTIGATION into MOZ_TEMP_INVESTIGATION and MOZ_JEMALLOC_HARD_ASSERTS. r=glandium
...
The former is temporary, the latter is not.
2012-06-20 01:22:40 -04:00
Justin Lebar
ad9a69c11a
Bug 766250 - Part 1: Enable more release-time jemalloc assertions. r=glandium
2012-06-20 01:22:40 -04:00
Justin Lebar
60d3e02dce
Bug 764192 - Followup, fix red. r=me
2012-06-13 09:21:06 -04:00
Justin Lebar
e7dbf347f4
Bug 764192 - Enable some jemalloc assertions at release time in the hopes of catching heap corruption. r=glandium
...
This is disabled for the release and esr channels.
--HG--
extra : rebase_source : 0b668cfbb63d6478a4200a414cd0dafa0cfba1ce
2012-06-13 09:10:12 -04:00
Mike Hommey
1510749815
Bug 580408 - Glue for jemalloc 3.0.0. r=khuey
2012-06-07 10:41:59 +02:00
Mike Hommey
caf974ce43
Bug 580408 - Move Mozilla fork of jemalloc to memory/mozjemalloc. r=khuey
...
--HG--
rename : memory/jemalloc/Makefile.in => memory/mozjemalloc/Makefile.in
rename : memory/jemalloc/jemalloc.c => memory/mozjemalloc/jemalloc.c
rename : memory/jemalloc/jemalloc.h => memory/mozjemalloc/jemalloc.h
rename : memory/jemalloc/jemalloc_types.h => memory/mozjemalloc/jemalloc_types.h
rename : memory/jemalloc/linkedlist.h => memory/mozjemalloc/linkedlist.h
rename : memory/jemalloc/osx_zone_types.h => memory/mozjemalloc/osx_zone_types.h
rename : memory/jemalloc/ql.h => memory/mozjemalloc/ql.h
rename : memory/jemalloc/qr.h => memory/mozjemalloc/qr.h
rename : memory/jemalloc/rb.h => memory/mozjemalloc/rb.h
2012-06-07 10:41:58 +02:00