Commit Graph

60 Commits

Author SHA1 Message Date
Jim Chen
44ff5a8059 Bug 680190 - Notify jemalloc when forking on Android; r=cjones 2011-08-30 17:11:36 -07:00
Jan Horak
b14ee5916f Bug 589735 - JS engine is completely broken on ia64 - jemalloc part; r=pbiggar 2011-08-29 17:26:22 +01:00
Mike Hommey
afd3b0fec6 Bug 680373 - Link jemalloc into mozutils instead of mozalloc on Android. r=blassey,r=pbiggar 2011-08-24 12:55:13 +02:00
Mike Hommey
57ff985c9e Bug 678195 - Remove old style jemalloc. r=khuey 2011-08-23 15:43:17 +02:00
Paul Biggar
d8519ed4e6 Bug 414946 (part 1): Fix jemalloc on Mac, but leave disabled (r=pavlov)
Overwrite the OSX default zone allocator, taking into account the malloc_zone_t
version (supported versions are 3, 6, and 8) for Leopard, Snow Leopard and
Lion. jemalloc can be dynamically disabled for unknown malloc_zone_t versions,
for OSX 10.8 and beyond.

The changeset does not enable jemalloc, to allow for easy disabling if there's
a problem. It will be enabled in the next changeset.

This should be a 15-20% improvement in memory usage.
2011-05-21 20:27:00 -07:00
Kyle Huey
7dd35449c9 Bug 515492: Android build bustage fix. 2011-06-27 17:30:53 -07:00
Kyle Huey
6d65bebedc Bug 515492: Make jemalloc work on VS 2010. r=ted,pbiggar 2011-06-27 12:44:51 -07:00
Paul Biggar
02cb98d94e Bug 659632: Refactor memalign visiblity to use MOZ_MEMORY_ELF (r=respindola) 2011-05-26 06:58:10 -07:00
Ed Morley
b73b764dd3 Bug 655480 - Remove WinCE code from memory/* ; r=pbiggar 2011-05-08 10:29:59 +02:00
Rafael Ávila de Espíndola
970cf8af84 Bug 635790 - Don't depend on gnu89 inline. r=pbiggar 2011-04-27 10:05:07 +02:00
6cb9030fe5 Bug 618790 handling of chunk in arena_run_alloc while loop is odd
r=jasone
2011-03-28 17:26:33 -04:00
Makoto Kato
d50c3c9ee5 Bug 625315 - Invalid ssize_t define on Windows x64. r=jasone a=bsmedberg 2011-02-03 14:36:15 +09:00
Vladimir Vukicevic
a7601d7445 Bug 616061 - Disable TLS in jemalloc on Android, r=mwu a=blassey 2011-01-25 15:22:45 -05:00
Kazuhi Ohta
d9b6726731 Bug 437451. keep arenas_lock during fork to avoid deadlock, r=karlt,a=bsmedberg 2011-01-17 10:49:32 +13:00
Jory A. Pratt
bf641887a2 Bug 593911 - Check for dlopen in the libc too. r=khuey a=bsmedberg 2010-11-05 18:26:51 +01:00
Mike Hommey
f5cddc429d Bug 435683 - Use syscall() for mmap and munmap and disable ncpus in jemalloc to work around deadlocks with LD_PRELOADed libraries. r=jasone, a2.0=bsmedberg 2010-08-18 19:46:59 +02:00
Igor Bukanov
b044e4ba77 bug 571332 - jemalloc - avoiding the null check in the free method for non-huge allocations. r=jasone 2010-06-11 16:22:14 +02:00
Brad Lassey
443f950eef bug 559263 - make jemalloc work with android, follow up patch r=ted
(transplanted from 098cf0d0c599fdcfedbc6ee5aadf01259e9dcd09)
2010-06-05 13:15:50 -04:00
Brad Lassey
414fcaa685 bug 559263 - implement jemalloc for android r=vlad 2010-05-25 11:28:14 -04:00
Benoit Jacob
9ed686d749 b=566017; allow jemalloc posix_memalign to handle 0-sized allocs; r=jevans 2010-05-19 13:46:08 -07:00
Jason Evans
eb6bb0db0c Bug 515556 - Fix jemalloc committed memory statistics. r=vlad 2009-11-10 16:01:08 -08:00
David Mandelin
215f9c35ba Bug 526152: make jemalloc's memalign support alignments less than pointer size, r=pavlov 2009-11-03 18:19:58 -08:00
David Mandelin
9fae45a913 Bug 515211: remove memory reserve feature from jemalloc, r=jasone 2009-11-02 13:02:37 -08:00
David Mandelin
0562d7f4ba Backed out changeset 109b74e8e902 due to tinderbox bustage (was bug 515211) 2009-10-30 11:15:03 -07:00
David Mandelin
ed62e7075c Bug 515211: remove memory reserve feature from jemalloc, r=jasone 2009-10-30 11:02:38 -07:00
Brian Crowder
8ff2c1b0e4 Backed out changeset 1a7c75165427 (landed way more than whitespace changes, woops) 2009-10-20 12:33:42 -07:00
Brian Crowder
d90d766bf2 fixing whitespace here, r=blassey 2009-10-20 12:26:03 -07:00
Karl Tomlinson
23726fef9e b=493541 hook jemalloc into glibc's malloc r=bsmedberg 2009-07-30 15:15:50 +12:00
Vladimir Vukicevic
bfc8c054d8 b=488608; enable jemalloc on CE6; r+sr=stuart 2009-04-24 10:31:18 -07:00
Vladimir Vukicevic
1c419428ac Backed out changeset 1eec75c27e2f 2009-04-24 10:43:19 -07:00
Vladimir Vukicevic
86fbf945c3 b=488608; enable jemalloc on CE6; r+sr=stuart 2009-04-24 10:31:18 -07:00
Brad Lassey
601a3d7cc5 bug 478044 - Addresses problems with reallocating unaligned memory on windows ce r=pavlov, jasone 2009-03-31 12:27:25 -04:00
Brad Lassey
b70b836b2e bug 478044 - enable jemalloc for windows ce r=stuart, jasone 2009-03-23 21:19:26 -04:00
Jason Evans
c2a2f7d922 Bug 478576 - infinite loop in jemalloc:chunk_recycle_reserve; r=pavlov
Avoid an infinite loop if the malloc reserve is depleted and there are no
registered event notification handlers.
2009-02-21 03:09:22 +01:00
Ginn Chen
12b3170e36 Bug 457189 to use MAP_ALIGN to request chunksize-aligned blocks from mmap r=jasone 2009-02-02 18:50:19 +08:00
e395543843 Bug 465127 - Disable jemalloc page file support (r=bsmedberg, r=jasone) 2008-12-11 15:37:48 -08:00
Taras Glek
b50fc579b7 Bug 464995 - avoid reads of size 1 in jemalloc; r=benjamin 2008-12-10 15:49:43 +01:00
Taras Glek
e30e6082c8 Bug 464995 - avoid reads of size 1 in jemalloc. r=jasone,sr=stuart 2008-11-20 10:48:51 -08:00
Jason Evans
514ed12234 Bug 460933: Call pthread_atfork() to prevent potential deadlock after forking. [r=stuart] 2008-10-30 16:13:43 -05:00
Jason Evans
01069b9824 Bug 446096: Integrate upstream jemalloc optimizations, r=pavlov
Enhance arena_chunk_map_t to directly support run coalescing, and use
the chunk map instead of red-black trees where possible.  Remove the
red-black trees and node objects that are obsoleted by this change.  The
net result is a ~1-2% memory savings, and a substantial allocation speed
improvement.

Add a radix tree to optimize isalloc_validate().
2008-07-25 14:53:20 -07:00
Jason Evans
031133dae9 Bug 446090: Fix assertions in jemalloc, r=pavlov
Create a custom assert() implementation in order to avoid recursive
deadlock.  Enable assertions on Windows (for debug builds).
2008-07-25 14:52:27 -07:00
Jason Evans
9fde4d166e Bug 427109: Add memory reserve and xmalloc() API, r=benjamin
This re-commmit adds locking that was missing in changeset c14ab4f6cec6.
2008-07-01 15:41:14 -07:00
Robert O'Callahan
cdf1427406 Backing out bug 427109 to try to fix Linux bustage 2008-06-24 19:52:40 +12:00
Jason Evans
6c1f43e304 Bug 427109: Add memory reserve and xmalloc() API, r=benjamin
Add support for a memory reserve, which is managed via the reserve_*() API.

Add xmalloc() variants of malloc()-like functions.  These functions never
return NULL.
2008-06-23 07:46:37 -07:00
Jason Evans
ab1cfa2d6a Bug 432475: Remove _malloc_options abuse, r=benjamin
Don't abuse _malloc_options to set platform-specific options, since doing so
makes the MALLOC_OPTIONS environment variable less useful.
2008-06-20 10:34:42 -07:00
Jason Evans
98a29a8d02 Bug 431739: Limit dirty page purging, r=benjamin
Limit dirty page purging so that it terminates once the number of pages is no
more than half the limit.

Add a separate tree to track arena chunks that contain dirty pages.  This
substantially improves worst case allocation performance, since O(lg n) tree
search can be used instead of O(n) tree iteration.
2008-06-20 10:34:42 -07:00
Jason Evans
7464f5a08b Bug 431735: Use rb.h instead of tree.h, r=benjamin
Use rb.h instead of tree.h for red-black trees, in order to reduce memory
overhead.
2008-06-20 10:34:42 -07:00
Jason Evans
288558a98a Bug 422960: Add jemalloc_stats() and jemalloc.h, r=benjamin 2008-06-20 10:34:42 -07:00
Jason Evans
5bcb327bc4 Bug 432894: X related valgrind | jemalloc - startup errors, r=bclary,r=benjamin
Fix bugs in jemalloc's valgrind support.
2008-06-20 10:34:41 -07:00
Jason Evans
4101084b8f Bug 431743: Upstream jemalloc fixes, r=benjamin
Incorporate upstream jemalloc fixes from FreeBSD:
  * Detect overflow for huge allocations via sbrk(2).
  * Fix deadlock for base (internal) allocations in OOM case.
  * Fix bitmap vector initialization for small allocation runs.
2008-06-20 10:29:43 -07:00