Emanuel Hoogeveen
d573431119
Bug 1100485 - Lock chunks during double purging to avoid racing with allocation. r=glandium
2014-11-19 09:34:00 +01:00
Emanuel Hoogeveen
f287680906
Bug 1073662 - Part 7: Enable limited chunk recycling on all platforms. r=glandium
2014-11-13 22:56:00 +01:00
Emanuel Hoogeveen
3768ec5def
Bug 1073662 - Part 6: Add JEMALLOC_RECYCLE, a mode that keeps a limited amount of chunks alive. r=glandium
2014-11-13 22:55:00 +01:00
Emanuel Hoogeveen
92ebf2b732
Bug 1073662 - Part 5: Hook the chunk recycle code up to JEMALLOC_MUNMAP and make it safe for use with MALLOC_DECOMMIT and MALLOC_DOUBLE_PURGE. r=glandium
2014-11-13 22:52:00 +01:00
Emanuel Hoogeveen
c6b56644de
Bug 1073662 - Part 4: Import chunk recycling code from jemalloc3. r=glandium
2014-11-01 12:00:00 +01:00
Emanuel Hoogeveen
5d83aef48f
Bug 1073662 - Part 3: Make all chunk-sized and larger allocations go through chunk_alloc. r=glandium
2014-09-26 13:29:00 +02:00
Emanuel Hoogeveen
8696f3a9ae
Bug 1073662 - Part 2: Always use the jemalloc3 allocation logic and remove the old logic. r=glandium
2014-09-26 13:27:00 +02:00
Emanuel Hoogeveen
db1349bf19
Bug 1073662 - Part 1: Remove support for the unused MALLOC_PAGEFILE. r=glandium
2014-09-26 13:27:00 +02:00
Nicholas Nethercote
ee0e0c98ea
Bug 1057754 (follow-up) - Allow Valgrind + jemalloc to be combined, because it makes sense when running Cachegrind. r=me.
2014-08-25 20:38:29 -07:00
Nicholas Nethercote
015fc70f98
Bug 1057754 - Remove the bogus Valgrind annotations from mozjemalloc. r=glandium.
...
--HG--
extra : rebase_source : c6b32f064181d28bf65d291189d87e516f5e0076
2014-08-25 16:59:43 -07:00
Makoto Kato
a0f8ec3066
Bug 1030899 - Remove issetugid usage on jemalloc. r=glandium
2014-07-08 17:52:09 +09:00
Ehsan Akhgari
b7d21c0be3
Bug 1028684 - Fix the signature of _msize in jemalloc.c; r=glandium
...
This function accepts a void* argument, not a const void*.
--HG--
extra : rebase_source : 9c5cd5066b3730871e06465a84f9a27a6adc6204
2014-06-24 07:20:22 -07:00
Jed Davis
10b28157d6
Bug 1011350 - Use TaggedAnonymousMemory to distinguish our various mmap call sites. r=njn
...
We can probably get more granular information than this, given that we
can re-tag memory after the initial mapping, or tag subregions of an
individual mmap() call differently. But this is a start.
2014-06-17 17:55:00 +02:00
Ehsan Akhgari
de07b6927f
Bug 1025906 - Include intrin.h in jemalloc.c; r=glandium
...
This fixes a linking error with clang-cl.
2014-06-16 22:34:26 -04:00
Eric Rahm
a772941928
Bug 1006769 - Part 2: Backport jemalloc3 run_size_calc logic. r=glandium
2014-05-21 17:34:07 -07:00
Eric Rahm
33a51f0c36
Bug 1006769 - Part 1: Improve heap-overhead memory reporting. r=njn
2014-05-21 17:34:06 -07:00
Nicholas Nethercote
b5aba0afc1
Bug 1013014 (attempt 2) - Disable Trace Malloc on TBPL debug builds. r=glandium.
...
--HG--
extra : rebase_source : 08fa200fd205225f85b9845bf8c18ac38fe26e0d
2014-05-19 18:16:42 -07:00
Mike Hommey
4915133ee5
Bug 984447 - Properly handle forks in mozjemalloc after bug 694896. r=smichaud
2014-03-29 16:53:49 +09:00
Thomas Zimmermann
724de1c4a9
Bug 979887: Fix GCC warnings about inline variable declarations, r=glandium
...
Some code is compiled in C90 mode, where inline declarations of
variables are not allowed.
2014-03-06 11:19:57 +01:00
David Major
cd455b826e
Bug 860254 - Part 4: Enable poisoning. r=glandium
2014-02-13 20:11:15 -05:00
David Major
445940d0b6
Bug 860254 - Part 2: Split junk settings into opt_junk (allocate) versus opt_poison (deallocate). r=glandium
2014-01-14 11:56:18 -08:00
David Major
9989920680
Bug 860254 - Part 1: #define MALLOC_FILL but keep the options const-false. r=glandium
2014-02-13 20:10:35 -05:00
Marcin Juszkiewicz
420122fd2c
Bug 963028 - AArch64 support for jemalloc. r=froydnj
2014-01-23 16:34:31 -05:00
Jon Coppeard
8e8c44704e
Bug 956501 - Update mozjemalloc chunk_alloc_mmap functions to latest upstream version r=glandium
2014-01-14 10:06:25 +00:00
Kai-Zhen Li
5979fa3eb3
Bug 957450 - fix compile error in gonk-kk. r=iacobcatalin
2014-01-10 14:14:53 +08:00
David Major
06ff88fdbc
Bug 931196 - Remove MOZ_TEMP_INVESTIGATION poisoning code. r=glandium
2013-10-31 11:52:08 -04:00
Nathan Froyd
23a4aa4d48
Bug 925169 - part 1 - don't use MOZ_MEMORY_SIZEOF_PTR_2POW in jemalloc.c; r=glandium
2013-10-09 19:04:43 -04:00
Douglas Crosher
ea8a7bdc6c
Bug 908971 - jemalloc: fix uninitialized 'mapped' variable. r=jlebar
2013-08-24 13:35:08 +10:00
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
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
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 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
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
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
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
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