Commit Graph

357 Commits

Author SHA1 Message Date
Jacek Caban
c4079db44b Bug 761859 - Missing MOZALLOC_EXPORT causes link failure on mingw r=ted 2012-06-11 09:51:06 +02:00
Mike Hommey
b83e644292 Bug 762446 - Hook jemalloc's abort. r=jlebar 2012-06-11 08:12:40 +02:00
Mike Hommey
1510749815 Bug 580408 - Glue for jemalloc 3.0.0. r=khuey 2012-06-07 10:41:59 +02:00
Mike Hommey
b5bd6b36d5 Bug 580408 - Import jemalloc 3.0.0. r=khuey,r=gerv 2012-06-07 10:41:58 +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
Jeff Walden
e00457555c Bug 761859 - Make mozalloc_abort use MOZ_CRASH to crash. r=ted 2012-06-05 16:49:30 -07:00
Mike Hommey
0a562bc5d0 Bug 758010 - Wrap operator new/delete to jemalloc on Android. r=jlebar 2012-05-31 23:49:03 +02:00
Gervase Markham
68d38d677f Bug 759095 - upgrade license to MPL 2, and other licensing cleanups.
--HG--
extra : rebase_source : da55a4937383eda2baf7c9a362501da8ee664146
2012-05-29 16:52:43 +01:00
Mike Hommey
11b04e4bcf Bug 758010 - Wrap operator new/delete on Android. r=khuey 2012-05-26 10:21:33 +02:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Matt Brubeck
60b5d7f292 Back out c209fea124e1 (bug 754198) because of Win64 build failure 2012-05-11 13:23:49 -07:00
Fabrice Desré
5397f4846a Bug 754198 - Warning treated as error in jemalloc.c. Build busted. [r=jlebar,bsmedberg] 2012-05-11 12:34:24 -07:00
Benjamin Smedberg
433fd36140 Bug 737164 prerequisite - move mozilla::fallible_t to its own header so that everyone can reference it reasonable, r=cjones
--HG--
extra : rebase_source : 1f0e042f6d639b960c85f7813346e82afcf27861
2012-05-08 12:30:37 -04:00
Mike Hommey
876a7d7818 Bug 751482 - Move wcsdup and je_dumb_free_thunk out of jemalloc.c. r=jlebar 2012-05-04 09:47:00 +02:00
Mike Hommey
a29da17198 Fixup for bug 736564 - Ship libmemory.a in the SDK instead of libjemalloc.a. r=ted 2012-05-04 09:46:27 +02:00
Mike Hommey
4079d49a02 Bug 736564 - Ship mozglue and jemalloc libraries in the SDK. r=bsmedberg,r=ted
As one import library on Windows, as one shared library on OSX and Android,
and as two separate static libraries on systems where mozglue is a static
library.
2012-05-03 08:36:12 +02:00
Mike Hommey
9cc7654e5e Bug 747322 - Fix jemalloc mmap wrapper for s390x. r=jlebar,a=npotb 2012-04-23 08:31:55 +02:00
Gian-Carlo Pascutto
12e5d134c7 Bug 743715 - Cannot build Fennec without jemalloc. r=glandium 2012-04-11 14:12:34 +02:00
Mike Hommey
502771afd6 Bug 738709 - Don't call pthread_atfork from jemalloc on OSX. r=jlebar 2012-04-05 09:20:54 +02:00
Mike Hommey
609e12c771 Bug 738176 - Completely disable jemalloc when it's supposed to be disabled on OSX, and cleanup exposed APIs. r=jlebar,r=khuey 2012-04-05 09:20:53 +02:00
Mike Hommey
3ef23117af Bug 736963 - Move jemalloc'ed strdup/strndup definitions. r=jlebar,r=ted 2012-03-31 09:23:19 +02:00
Mike Hommey
6853dfab1c Bug 737084 - Do pthread_atfork in jemalloc on mac and android. r=blassey,r=khuey 2012-03-22 08:01:51 +01:00
Mike Hommey
92ee6771d6 Bug 736959 - Don't wrap PR_Malloc and other NSPR allocation functions. r=khuey 2012-03-22 08:01:27 +01:00
Michael Wu
599e26085d Bug 737175 - Make jemalloc build on ICS, r=khuey,glandium 2012-03-18 23:33:46 -04:00
Justin Lebar
f20f0ea954 Bug 731696 - Revert jemalloc isalloc test code added in bug 703087. r=khuey 2012-02-29 11:25:00 -05:00
Jonathan Kew
0226614b64 bug 723472 - don't trigger an OOM abort on a zero-size allocation. r=cjones 2012-02-02 14:34:22 +00:00
Nicholas Nethercote
7559a70a04 Bug 715453 - Remove computedSize from nsMallocSizeOfFun. r=jlebar,bhackett.
--HG--
extra : rebase_source : a65039a407daab45360a5b375b53cbf1bc05b7f6
2012-01-25 00:52:51 -08:00
Benjamin Smedberg
587594165b Bug 716638 - Annotate the size of a failed allocation due to OOM and submit it with the crash report, r=ted
--HG--
extra : rebase_source : 5b7d10cb2e117deabb89b75ec3f3b1a221b3c80b
2012-01-24 11:08:51 -05:00
Mike Hommey
beeba9e288 Bug 697301 - Avoid the compiler making optimizations to mozalloc_abort that end up corrupting stack traces. r=cjones 2012-01-13 07:24:17 +01:00
Ms2ger
488d00a8b6 Bug 717441 - Backout bug 715093 / changeset d5f3e38021fd for Fennec crashes. 2012-01-12 21:35:48 +01:00
Ms2ger
83e99e1202 Bug 715093 - Get rid of MOZALLOC_INLINE in favour of MOZ_ALWAYS_INLINE; r=glandium 2012-01-11 09:22:16 +01:00
Mike Hommey
e53de290fb Bug 701371 - Rename mozutils to mozglue, and move it to top-level. r=khuey,a=brendan
--HG--
rename : memory/mozutils/Makefile.in => mozglue/Makefile.in
rename : memory/mozutils/Makefile.in => mozglue/build/Makefile.in
rename : memory/mozutils/dummy.cpp => mozglue/build/dummy.cpp
rename : memory/mozutils/fixcrt.py => mozglue/build/fixcrt.py
rename : memory/mozutils/mozutils.def.in => mozglue/build/mozglue.def.in
2011-12-28 08:24:02 +01:00
Jacek Caban
e46b6273a6 Bug 712584 - Properly use .def files on mingw builds r=khuey 2011-12-27 10:51:53 +01:00
Jeff Walden
9098fa4182 Bug 711775 - Implement MOZ_NORETURN to encapsulate this-function-doesn't-return semantics. r=cjones
--HG--
extra : rebase_source : d56f3ef47e11c42b5fe6a442e13fd6202208914f
2011-12-17 16:45:29 -05:00
Nicholas Nethercote
6bbcf3b4f8 Bug 704400 - Implement --enable-dmd. r=khuey. 2011-12-08 19:09:36 -08:00
Ben Turner
bddb2824ad Bug 703660 - IndexedDB: Compress structured clone data with Snappy. r=sicking+khuey. 2011-12-07 15:24:20 -08:00
Phil Ringnalda
ca22b9cadc Back out 8941e2b7a0bf (bug 703660) for Windows PGO build failures 2011-12-07 08:41:02 -08:00
Ben Turner
4850cef1dd Bug 703660 - IndexedDB: Compress structured clone data with Snappy. r=sicking+khuey.
--HG--
extra : transplant_source : 55%9D%86m%D8%18%87J%5C%E1%E3%93P%AF.%B7%D0%8EQ
2011-12-07 00:10:13 -08:00
Igor Bukanov
d68e7d13ca bug 571209 - option to use compile-time constants, not parameters configured at runtime, for maximal jemalloc performance. r=justin.lebar 2011-10-26 10:17:34 +02:00
Nicholas Nethercote
6c6258e659 Bug 698968 - Add mallocSizeOf functions and start using them. r=jlebar,bhackett,jfkthame, sr=bz. 2011-11-27 19:03:14 -08:00
Justin Lebar
c116bea173 Bug 703087 - (Temporarily) enable assertion in isalloc_validate in release builds, to test for potential ozone_size corruption. r=khuey 2011-11-16 17:48:02 -05:00
Justin Lebar
e7a1630524 Back out bug 703087 (rev b5c891d2e68a) due to red. 2011-11-21 09:27:36 -05:00
Justin Lebar
9594c666fe Bug 703087 - (Temporarily) enable release-build assertion in isalloc_validate in release builds, to test for potential ozone_size corruption. r=khuey 2011-11-16 17:48:02 -05:00
Justin Lebar
f12b89e5cb Bug 702250 - Disable jemalloc on mac 10.5 due to crash in ozone_size (apparent OS bug). r=khuey
This is likely to regress a number of benchmarks.

--HG--
extra : rebase_source : 6831d8b3a846ec3193449132bef1648d426356db
2011-11-21 09:02:17 -05:00
Justin Lebar
0ee51ee888 Bug 697085 - Link to Mac malloc header in memory/jemalloc/osx_zone_types.h. DONTBUILD r=gerv
--HG--
extra : rebase_source : f5d804930cdfc93e6e0460fa28f1625b4e66e277
2011-11-20 21:19:00 -05:00
Phil Ringnalda
4c80c99a2c Back out a3fcfb7d6647 (bug 702250) because it turned 10.5 opt tests pure orange 2011-11-17 19:41:44 -08:00
Justin Lebar
424d3e2729 Bug 702250 - Disable jemalloc on mac 10.5 due to crash in ozone_size (apparently due to OS bug). r=khuey
This will likely regress a number of benchmarks.
2011-11-17 18:06:23 -05:00
Michael Wu
5dd6a67845 Bug 694206 - Add Gonk (B2G) widget backend, r=cjones 2011-11-10 16:17:46 -08:00
Justin Lebar
5dec9d83e1 Bug 699395 - Modify zone_good_size to call je_malloc_usable_size_in_advance. r=njn
--HG--
extra : rebase_source : 24feb93e8ceebd74a8dbcb0084f7f27ecf6495e3
2011-11-07 16:32:36 -05:00
Justin Lebar
4199c112c7 Bug 699101 - Warn when NO_MAC_JEMALLOC is set on i386 machines, because it doesn't work there. r=khuey 2011-11-04 11:41:53 -04:00
Nicholas Nethercote
c2b905ac11 Bug 678977 - Teach sqlite to use jemalloc directly when applicable. code=nnethercote,khuey. r=khuey,sdwilsh,jlebar. 2011-11-03 20:53:41 -07:00
Justin Lebar ext:(%2C%20Steven%20Michaud%20%3Csmichaud%40pobox.com%3E)
890ef87b41 Bug 694896 - Fix jemalloc hangs and crashes on Mac 10.7, enable jemalloc on Mac 10.7, and make mmap'ing pages in jemalloc faster on Linux and Mac. r=khuey 2011-10-25 16:25:50 -04:00
Ed Morley
9f7eac8d98 Backout changeset 242bbbe83dda (bug 694896) for build failures on OS X; a=khuey 2011-11-03 17:39:39 +00:00
Justin Lebar ext:(%2C%20Steven%20Michaud%20%3Csmichaud%40pobox.com%3E)
aaa8fa4e5d Bug 694896 - Fix jemalloc hangs and crashes on Mac 10.7, enable jemalloc on Mac 10.7, and make mmap'ing pages in jemalloc faster on Linux and Mac. r=khuey 2011-10-25 16:25:50 -04:00
Justin Lebar
515237a036 Back out bug 694896, rev 62ba86c7; wrong patch was checked in. 2011-11-03 12:57:40 -04:00
Justin Lebar ext:(%2C%20Steven%20Michaud%20%3Csmichaud%40pobox.com%3E)
475732f933 Bug 694896 - Fix jemalloc hang and crash on Mac 10.7, and enable jemalloc on 10.7. r=khuey 2011-10-20 17:26:47 -04:00
Justin Lebar
0fdb8e1f12 Bug 694335 - Enable jemalloc on MacOS 10.5. r=khuey
Note: Our RSS metrics should show that this patch regresses memory usage, but they're wrong.  See the bug for details.
2011-10-27 11:28:45 -04:00
Justin Lebar
ca3025bf0b Bug 693404 - Part 1: On MacOS, add public jemalloc function to purge MADV_FREE'd pages, making our RSS reflect reality. r=khuey 2011-10-24 13:23:47 -04:00
Justin Lebar
58f66fccdb Back out bug 693404 (2f7668cd67bc, 3db099ca452a) due to red. 2011-10-24 14:02:16 -04:00
Justin Lebar
8957edb015 Bug 693404 - Part 1: On MacOS, add public jemalloc function to purge MADV_FREE'd pages, making our RSS reflect reality. r=khuey
--HG--
extra : rebase_source : fb043fcb06963ed2d5f94e8f4659da94f43ed014
2011-10-24 13:23:47 -04:00
Jeff Muizelaar
bcc953b354 Bug 695171. Make our operator new throw std::bad_alloc. r=cjones
If new doesn't throw bad_alloc the compiler emits a null check after to avoid
calling the constructor. http://llvm.org/bugs/show_bug.cgi?id=10895

Adding throw(std::bad_alloc) shaves 57KB of .text off a gcc mac build and 61KB off
a clang build.

--HG--
extra : rebase_source : 098c1f5df472bcc572b812fe5d4f12c8eadf14d2
2011-10-18 14:19:23 -04:00
Justin Lebar
975f0d3e57 Bug 682437 - Add memory reporter for History::mObservers. r=bz
--HG--
extra : rebase_source : f280a6beefd32319816ff8720f7bf65c04343b1e
2011-09-14 17:37:45 -07:00
Justin Lebar
a0deb3a0e8 Bug 681183 - Make jemalloc_stats.committed meaningful on *nix. r=khuey 2011-10-10 13:54:42 -04:00
Justin Lebar
06bf4b7f8a Bug 683597 - Change jemalloc's accounting for huge allocations to round up to the next page boundary, not to the next MB. r=khuey
--HG--
extra : rebase_source : 4449e8b33af835be729c157241bfeed0f6725c21
2011-10-07 14:39:53 -04:00
Justin Lebar
50f70bc91e Bug 691003 - jemalloc's minimum alignment must be word sized on *nix. r=khuey
--HG--
extra : rebase_source : 24c31b1afcc10af36f6d87ec6ec3e462b18cceff
2011-10-05 14:03:39 -04:00
Paul Biggar
6e56dee477 Bug 414946: Re-enable jemalloc on OSX 10.6 only. r=khuey 2011-07-25 17:20:18 -07:00
Makoto Kato
89bf0597c8 Bug 681202 - Add Android x86 target. r=glandium 2011-09-29 13:39:03 +09:00
Mike Hommey
402b882927 Backout the backout of e5815c156b6c (bug 683096), 9ca928d8095c (merge), a286edb8ca4b (bug 683875), 61dc35b8f63f (bug 683171), b0741ae44def (bug 683875), 8e01bc314326 + e2697c06468f (bug 677501), 805e28e85577 (bug 680440) 2011-09-03 08:19:06 +02:00
Ed Morley
ee10afb48a Backout e5815c156b6c (bug 683096), 9ca928d8095c (merge), a286edb8ca4b (bug 683875), 61dc35b8f63f (bug 683171), b0741ae44def (bug 683875), 8e01bc314326 + e2697c06468f (bug 677501), 805e28e85577 (bug 680440) for Win opt orange and purple galore, on a CLOSED TREE 2011-09-03 04:35:21 +01:00
Kyle Huey
5aba5a29af Merge b-s to m-c. 2011-09-02 17:35:11 -04:00
Mike Hommey
3238236e63 Bug 677501 - Add a dummy symbol to libmozutils until bug 662814 lands. r=me 2011-09-01 14:12:13 +02:00
Mike Hommey
8285bb9468 Bug 677501 - Build a mozutils library containing jemalloc and other things. r=khuey
--HG--
rename : memory/jemalloc/Makefile.in => memory/mozutils/Makefile.in
rename : memory/jemalloc/fixcrt.py => memory/mozutils/fixcrt.py
rename : memory/jemalloc/jemalloc.def => memory/mozutils/mozutils.def.in
2011-09-01 14:12:10 +02:00
Mike Hommey
4f09641fb4 Bug 680440 - Clean up jemalloc linkage. r=khuey 2011-09-01 14:11:56 +02:00
Kyle Huey
134b8fad07 Merge m-c to b-s. 2011-08-31 07:52:43 -04:00
Jim Chen
bb78e1b03d Bug 680190 - Notify jemalloc when forking on Android; r=cjones 2011-08-30 17:11:36 -07:00
Kyle Huey
26a42afe84 Bug 682313: Fix jemalloc to export _strdup and _wcsdup so that we don't have an allocator mismatch. r=jimm 2011-08-30 17:07:51 -04:00
Ed Morley
c62c25def9 Merge last green changeset on m-i to m-c 2011-09-01 08:41:18 +01:00
Chris Jones
aa1ba63c54 Bug 669403: Always build both VC9 and VC10 exception-wrapping hackery into the Gecko SDK. r=bsmedberg 2011-08-31 11:05:20 -07:00
Jan Horak
6dca5e5eaf Bug 589735 - JS engine is completely broken on ia64 - jemalloc part; r=pbiggar 2011-08-29 17:26:22 +01:00
Mike Hommey
7f22909cc5 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
9877d798b0 Bug 678195 - Remove old style jemalloc. r=khuey 2011-08-23 15:43:17 +02:00
Mike Hommey
171858fa54 Bug 654049 - Use global optimization flags for jemalloc, cairo, pixman and sqlite. r=ted 2011-07-21 08:32:23 +02:00
Neil Rashbrook
7d21edcdd1 Bug 667962 Try to make jemalloc build with gmake as well as pymake r=khuey 2011-07-28 15:28:13 +01:00
Ms2ger
e251aa328f Backout bug 673197, bug 667962 (changesets 83ef35b794ce and 370bcc140023) for winopt bustage 2011-07-27 23:25:32 +02:00
Neil Rashbrook
b0c6055481 Bug 667962 Try to make jemalloc build with gmake as well as pymake r=khuey 2011-07-27 20:24:11 +01:00
Marco Bonardo
77013a6607 Merge mozilla-inbound and mozilla-central 2011-07-08 11:53:56 +02:00
Alon Zakai
03ee59ca0a Bug 644707 - Avoid calling system abort(), generate useful stack traces through a manual segfault instead. r=ted 2011-07-07 14:09:52 -07:00
Makoto Kato
9f4562e96e Bug 668151 - Bug 515492 (VS2010 jemalloc support) doesn't work on Win64. r=khuey 2011-07-01 10:40:30 +09:00
Paul Biggar ext:(%2C%20Jason%20Evans%20%3Cjasone%40canonware.com%3E%20and%20Dale%20Kim%20%3Cdalekim1%40illinois.edu%3E)
b960b62118 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
23be178828 Bug 515492: Put back the last line because I'm too clever by half. a=mfbt 2011-06-27 20:56:05 -07:00
Kyle Huey
3f9ef38ff1 Bug 515492: Revert some bogus changes for hopefully the last android build bustage fix. 2011-06-27 20:17:22 -07:00
Kyle Huey
12d69b1d7d Bug 515492: Android build bustage fix. 2011-06-27 19:20:03 -07:00
Kyle Huey
6bcb147a93 Bug 515492: Android build bustage fix. 2011-06-27 17:30:53 -07:00
Kyle Huey
9cb6ce116c Bug 515492: Android build bustage fix. 2011-06-27 16:59:20 -07:00
Kyle Huey
0a75fad44f Bug 515492: Android build bustage fix. 2011-06-27 16:28:36 -07:00
Kyle Huey
068cbbf275 Followup fixes for Bug 515492. 2011-06-27 16:11:45 -07:00
Kyle Huey
224832d24d Bug 515492: Make jemalloc work on VS 2010. r=ted,pbiggar 2011-06-27 12:44:51 -07:00
Mike Hommey
a1346a7c29 Bug 662224 - Define NS_ATTR_MALLOC and NS_WARN_UNUSED_RESULT in xpcom-config.h, and include it from mozalloc.h. r=bsmedberg 2011-06-07 03:09:46 +02:00
Paul Biggar
3c0e4b2d34 Bug 659632: Refactor memalign visiblity to use MOZ_MEMORY_ELF (r=respindola) 2011-05-26 06:58:10 -07:00
Rafael Ávila de Espíndola
2f6db18989 Bug 657528 - Use a volatile pointer to force a trap; r=ehsan
Clang issues the warning:
mozalloc_abort.cpp:64:22: warning: indirection of non-volatile null pointer will be deleted, not trap [-Wnull-dereference]

And sure enough, TouchBadMemory is currently broken with clang. That breaks mozalloc_abort
which breaks NS_DebugBreak which breaks the crashreport test.
2011-05-16 21:07:06 -04:00
Ed Morley
203e003900 Bug 655480 - Remove WinCE code from memory/* ; r=pbiggar 2011-05-08 10:29:59 +02:00
Rafael Ávila de Espíndola
89b1894cdc Bug 635790 - Don't depend on gnu89 inline. r=pbiggar
--HG--
extra : rebase_source : e4b59ec7be7ca38b1215d4a9fb6079788de14481
2011-04-27 10:05:07 +02:00
Landry Breuil
e37388df67 Bug 633857 - missing #includes for OpenBSD (mozalloc part). r=cjones 2011-04-14 17:49:38 +09:00
timeless@mozdev.org
1b6730928a 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
f4d7834641 Bug 625753 - 64-Bit Firefox 4.0b10pre Crash Reports [@ malloc_rtree_set ]. r=ted a=bsmedberg 2011-02-09 15:50:13 +09:00
Makoto Kato
bec250094e Bug 625315 - Invalid ssize_t define on Windows x64. r=jasone a=bsmedberg 2011-02-03 14:36:15 +09:00
Vladimir Vukicevic
6209c787e9 Bug 616061 - Disable TLS in jemalloc on Android, r=mwu a=blassey 2011-01-25 15:22:45 -05:00
Kazuhi Ohta
4a981f31f1 Bug 437451. keep arenas_lock during fork to avoid deadlock, r=karlt,a=bsmedberg 2011-01-17 10:49:32 +13:00
Ryan VanderMeulen
017ef708cc Bug 578546 - Fix MSVC warning spam by adjusting ifdef to include MSVC. r=cjones a=benjamin 2010-11-16 10:19:23 +01:00
Walter Meinl
656f6a5529 Bug 577011 there's another typo a=bustage 2010-11-09 19:29:09 +08:00
Walter Meinl
0fd4debfdf Bug 577011 fix typo of last commit a=bustage 2010-11-09 19:17:10 +08:00
Walter Meinl
859a94a18d Bug 577011 - [OS/2] make _declspec unconditionally default symbol export r=daveryeo@telus.net a=benjamin
--HG--
extra : rebase_source : f73a926174bd7905f177b2e914492e42b90ac8c0
2010-11-09 11:13:03 +01:00
Chris Jones
52d0f01838 Bug 550611: Make nsTArray optionally infallible. sr=bsmedberg a=blocking
--HG--
rename : xpcom/glue/nsTArray.cpp => xpcom/glue/nsTArray-inl.h
2010-11-08 20:48:59 -06:00
Jory A. Pratt
23abde6d1a Bug 593911 - Check for dlopen in the libc too. r=khuey a=bsmedberg 2010-11-05 18:26:51 +01:00
Chris Jones
407adf7a6a Band-aid for bug 602558: Avoid the VS10 STL wrappers getting tangled up in <utility>. r=vlad a=bustage 2010-10-07 17:57:47 -05:00
Mike Hommey
dc6784ecfc 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
--HG--
extra : rebase_source : 56b4f87c151bbdb6cb9a4b22373af3ff33339b79
2010-08-18 19:46:59 +02:00
Chris Jones
6f8d9b52ca Bug 577831: Add mozalloc to XUL SDK. r=bsmedberg 2010-08-05 13:53:43 -05:00
Robert Sayre
103fa1295e Merge mozilla-central to tracemonkey. 2010-06-21 18:01:14 -07:00
Igor Bukanov
a9b76bf69b 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
e64a60da7d bug 559263 - make jemalloc work with android, follow up patch r=ted
(transplanted from 098cf0d0c599fdcfedbc6ee5aadf01259e9dcd09)

--HG--
extra : transplant_source : %09%8C%F0%D0%C5%99%FD%CF%ED%BCn%E5%AA%DF%01%25%9E%9D%CD%09
2010-06-05 13:15:50 -04:00
Chris Jones
9e8fb2c03a Bug 551071: Suppress valgrind-reported "mismatched free()" (false alarm) of chromium objects by using mozalloc there (complements STL wrappers). Add a gross hack to prevent mozalloc macros from conflicting with methods in jscntxt.h. r=bent r=bsmedberg dependent-r=brendan 2010-06-04 18:16:34 -05:00
Jacek Caban
1821e61c09 Bug 558928 - Use DebugBreak instead of __debugbreak. r=ehsan
--HG--
extra : rebase_source : b4344a0fff52c708b88871c186c7f740aebc4124
2010-05-21 11:17:00 -04:00
Saint Wesonga
e6180061d8 Bug 570553 - mozalloc.h:208:1: warning: C++ style comments are not allowed in ISO C90. r=vlad 2010-06-16 18:54:25 +02:00
Makoto Kato
4bfdde6d45 Bug 521193 - jemalloc support for Windows x64 build (VC 2005 / 2008). r=ted
--HG--
rename : memory/jemalloc/crtvc8sp1.diff => memory/jemalloc/crtvc8sp1-intel.diff
rename : memory/jemalloc/crtvc9sp1.diff => memory/jemalloc/crtvc9sp1-intel.diff
2010-06-03 19:12:26 +09:00
Vladimir Vukicevic
73cbd73f4a b=566447; add presshell memory reporter; r=bz 2010-05-31 19:19:35 -07:00
Chris Jones
832a98be02 Bug 557935: Show jemalloc stats in about:memory on linux. r=vlad 2010-05-26 14:40:52 -05:00
Brad Lassey
74db90d53e bug 559263 - implement jemalloc for android r=vlad 2010-05-25 11:28:14 -04:00
Brad Lassey
ff289c5672 pushing white space change to trigger a new build 2010-05-24 17:42:39 -04:00
Benoit Jacob
ca83ae7876 b=566017; allow jemalloc posix_memalign to handle 0-sized allocs; r=jevans 2010-05-19 13:46:08 -07:00
Chris Jones
96fcae4c10 Bug 558928: Use __debugbreak() to abort on windows. r=ehsan 2010-05-18 20:53:53 -05:00
Chris Jones
cd90ce49a1 Bug 564185: Centralize the breakpad-triggering abort code in mozalloc and use |*NULL| to abort on mac, since abort() doesn't trigger breakpad. r=ted 2010-05-18 20:53:52 -05:00
Jacek Caban
903fcea3d7 Bug 557000 - Don't use GCC_VERSION to detect GCC in makefiles. r=ted 2010-05-01 11:46:25 +02:00
Daniel Holbert
7d1e5ba861 Bug 564261: fix build warning about C++ style comment in mozalloc.h. r=cjones 2010-05-11 12:07:33 -07:00
Chris Jones
76b03a561a Bug 560723: Interpose non-throwing mozilla variants of VC10 STL functions that throw exceptions. r=ehsan sr=bsmedberg
--HG--
rename : memory/mozalloc/throw_msvc.cpp => memory/mozalloc/msvc_throw_wrapper.cpp
2010-04-28 19:38:41 -05:00
Takanori MATSUURA
3c1494cd08 Followup to bug 557060: Fix missing #include <string.h>. r=cjones 2010-04-21 23:41:41 -05:00
Chris Jones
7af55eecbb Bug 550692: Wrap posix_memalign, memalign, and valloc if jemalloc provides them and the OS doesn't. r=bsmedberg 2010-04-21 23:41:40 -05:00
Chris Jones
ce99d8226f Bug 557060: Interpose _Throw() on MSVC and centralize pseudo-throw code in mozalloc. r=ehsan sr=bsmedberg 2010-04-20 15:12:02 -05:00
Marco Perez
7fda312bc5 Bug 550666: Fix FreeBSD bustage in mozalloc. r=bsmedberg 2010-04-10 17:29:46 -04:00
Chris Jones
aeb1d69308 Bug 550401: Do the __declspec import/export dance in mozalloc to avoid MSVC warnings. r=bsmedberg 2010-04-08 13:05:02 -05:00
Ginn Chen
6fd562ba57 Bug 550371 mozalloc failed to build on Solaris r=bsmedberg 2010-04-07 14:16:32 +08:00
Jacek Caban
c7fbbd516c Bug 441324 - mingw fix 2010-03-06 05:59:00 -06:00
Mats Palmgren
693b5f56ed Implement std::nothrow variants of operator new/delete. b=550805 r=cjones 2010-03-14 20:56:47 +01:00
Brad Lassey
daab44389b bug 551098 - windows mobile crashes on start up since xmalloc landing r=cjones 2010-03-08 22:45:51 -05:00
Takanori MATSUURA
267ef2df77 Bug 526389 - Skip redefinition of memory allocation functions for MacOS X and Linux. r=jasone 2010-03-07 10:53:46 +01:00
Walter Meinl
65cceb90ab Bug 550542: [OS/2] Followups for xmalloc r=cjones 2010-03-06 12:58:04 -05:00
Chris Jones
90e5b2265a Bug 441324, part 3: Configure and build changes for libmozalloc. r=bsmedberg 2010-03-03 23:02:57 -06:00
Chris Jones
58d2b77983 Bug 441324, part 2: Implement libmozalloc with support for fallible and infallible malloc et al. and |operator new|s. r=bsmedberg 2010-03-03 23:02:56 -06:00
Jason Evans
9dafcbbd25 Bug 515556 - Fix jemalloc committed memory statistics. r=vlad 2009-11-10 16:01:08 -08:00
David Mandelin
e1654c8442 Bug 526152: make jemalloc's memalign support alignments less than pointer size, r=pavlov 2009-11-03 18:19:58 -08:00
David Mandelin
370a86b518 Bug 515211: remove memory reserve feature from jemalloc, r=jasone 2009-11-02 13:02:37 -08:00
David Mandelin
b8fb573849 Backed out changeset 109b74e8e902 due to tinderbox bustage (was bug 515211) 2009-10-30 11:15:03 -07:00
David Mandelin
e82d146136 Bug 515211: remove memory reserve feature from jemalloc, r=jasone 2009-10-30 11:02:38 -07:00
Brian Crowder
92f6d220fd Backed out changeset 1a7c75165427 (landed way more than whitespace changes, woops) 2009-10-20 12:33:42 -07:00
Brian Crowder
18b3b9db47 fixing whitespace here, r=blassey 2009-10-20 12:26:03 -07:00
Takeshi Ichimaru
8b8c67adf8 Bug 521182 remove -arch:SSE2 from crtvc9sp1.diff r=ted 2009-10-09 00:07:15 +09:00
Vladimir Vukicevic
083881d5f9 b=515354; implement "about:memory", jemalloc_stats export; r=ted 2009-10-03 00:21:30 -07:00
Chris Jones
708e2e04ae Backed out changeset 8cbc47eee659 2009-10-02 18:09:08 -05:00
Chris Jones
f2df9d3504 bug 441324: implement infallible ::operator new(), malloc() and friends. make |new Foo()| infallible, but leave |malloc()| fallible for the time being. r=blassey sr=bsmedberg,vlad 2009-10-01 21:50:09 -05:00
Vladimir Vukicevic
7c4a9a0ff3 b=416117; allow building jemalloc on windows with vc9sp1; r=ted
--HG--
rename : memory/jemalloc/crtsp1.diff => memory/jemalloc/crtvc8sp1.diff
2009-09-22 13:00:18 -07:00
Ted Mielczarek
f2d96f1b3d bug 508861 - Build/ship the C++ runtime with MSVC/jemalloc. r=bsmedberg
--HG--
extra : rebase_source : 3ce54c05f07236d49469b66c695bfac3ccef06af
2009-08-17 13:13:37 -04:00
Karl Tomlinson
77be8894d4 b=493541 hook jemalloc into glibc's malloc r=bsmedberg 2009-07-30 15:15:50 +12:00
Ted Mielczarek
ea4d41da0d bug 468447 - Nonfatal "NMAKE : fatal error U1052: file 'makefile.sub' not found" in every single log masks real errors in failure logs. r=bsmedberg
--HG--
extra : rebase_source : a4a468e05352c69e1e9cf1e1d2148f9f0ca13b63
2009-05-11 15:54:39 -04:00
Vladimir Vukicevic
58c5594f79 b=488608; enable jemalloc on CE6; r+sr=stuart 2009-04-24 10:31:18 -07:00
Vladimir Vukicevic
d74478825c Backed out changeset 1eec75c27e2f 2009-04-24 10:43:19 -07:00
Vladimir Vukicevic
ea2f5a27fc b=488608; enable jemalloc on CE6; r+sr=stuart 2009-04-24 10:31:18 -07:00
Ted Mielczarek
9778d6ab76 bug 487396 - fix some of the jemalloc windows build madness. r=bsmedberg 2009-04-20 06:56:23 -04:00
Benjamin Smedberg
f7437dbe2c Bug 485410 - Quote jemalloc patchery a little more carefully, and make it fail if it doesn't work, r=ted 2009-03-20 10:18:45 -07:00
Brad Lassey
9cdd265378 bug 478044 - Addresses problems with reallocating unaligned memory on windows ce r=pavlov, jasone 2009-03-31 12:27:25 -04:00
Brad Lassey
71225766d2 bug 478044 - enable jemalloc for windows ce r=stuart, jasone 2009-03-23 21:19:26 -04:00
Jason Evans
b94cdf2458 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
6e2eed518c Bug 457189 to use MAP_ALIGN to request chunksize-aligned blocks from mmap r=jasone 2009-02-02 18:50:19 +08:00
Daniel Holbert
4301671b45 Bug 473236 - Remove executable bit from files that don't need it. (Only changes file mode -- no code changes.) r=bsmedberg 2009-01-21 22:55:08 -08:00
tglek@mozilla.com
cd3f681e04 Bug 465127 - Disable jemalloc page file support (r=bsmedberg, r=jasone) 2008-12-11 15:37:48 -08:00
Taras Glek
a2d1f0b515 Bug 464995 - avoid reads of size 1 in jemalloc; r=benjamin 2008-12-10 15:49:43 +01:00
Taras Glek
7ec4a6d447 Bug 464995 - avoid reads of size 1 in jemalloc. r=jasone,sr=stuart 2008-11-20 10:48:51 -08:00
Jason Evans
9eba2e7831 Bug 460933: Call pthread_atfork() to prevent potential deadlock after forking. [r=stuart] 2008-10-30 16:13:43 -05:00
Stuart Parmenter
a02648cc99 bug 451193. link xulrunner-stub with jemalloc on linux. r=bsmedberg 2008-08-26 15:25:05 -07:00
Jason Evans
3ef7e52a36 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
fc229845b3 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
Robert Kaiser
47d46f359c use '-s' options instead of '-' for 'silent' on ed, as we know at least one machine where the former succeeds and the latter fails though both mean the same, r=ted 2008-07-03 18:51:44 +02:00
Jason Evans
7e227fb003 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
5e0195af67 Backing out bug 427109 to try to fix Linux bustage 2008-06-24 19:52:40 +12:00
Jason Evans
11f8f29a22 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
666f56f16b Bug 431735: Fix build failures due to compiler flag incompatibilities, r=ted 2008-06-20 12:00:29 -07:00
Jason Evans
b3f6c9945b 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
b0d2a38b86 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
4fcf854663 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
16e8825a75 Bug 422960: Add jemalloc_stats() and jemalloc.h, r=benjamin 2008-06-20 10:34:42 -07:00
Jason Evans
9f1fc45c67 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
8451913ec7 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
reed@reedloden.com
822470b092 Bug 418016 - "Ts jumped ~1% when enabling jemalloc on Linux (qm-mini-ubuntu01, qm-mini-ubuntu02, qm-mini-ubuntu05)" (Revert jemalloc/libxul integration; makes this bug WONTFIX) [p=jasone@canonware.com (Jason Evans) a1.9=schrep] 2008-05-08 02:20:44 -07:00
ginn.chen@sun.com
cea5978b88 Bug 422055 Remove alloca() call patch by Jason Evans a=mtschrep 2008-05-07 22:36:40 -07:00
pavlov@pavlov.net
33cd991184 bug 427351. sbrk behaves poorly. disable it. patch from Jason Evans <jasone@canonware.com> r=me a=schrep 2008-05-07 14:21:40 -07:00
ginn.chen@sun.com
a696c7adae Bug 422055 Use jemalloc on OpenSolaris p=Jason Evans, Ginn Chen r=ted.mielczarek a=beltzner 2008-04-30 00:14:44 -07:00
pavlov@pavlov.net
192863b8d1 bug 420678. make malloc_usable_size check for valid allocations. patch from Jason Evans <jasone@canonware.com> r=me a=beltzner 2008-04-12 12:39:11 -07:00
pavlov@pavlov.net
a82c2e36c8 bug 424040. add valgrind hooks to jemalloc. patch from Jason Evans <jasone@canonware.com> r=me 2008-04-08 00:19:40 -07:00
pavlov@pavlov.net
4f2f3de52b bug 423036. decommit for huge allocations. patch from Jason Evans. r/sr=me a=vlad 2008-03-14 20:51:44 -07:00
dholbert@cs.stanford.edu
ce8a3a3620 Bug 418016 Follow-up patch: force static jemalloc lib, to fix bustage for non-libxul linux builds. r+sr=pavlov a=blocking1.9+ 2008-03-14 17:51:38 -07:00
reed@reedloden.com
4bcd5af890 Bug 418016 - "Ts jumped ~1% when enabling jemalloc on Linux (qm-mini-ubuntu01, qm-mini-ubuntu02, qm-mini-ubuntu05)" (Integrate jemalloc into libxul on Linux) [p=jasone@canonware.com (Jason Evans) r=bsmedberg sr+a1.9=stuart] 2008-03-14 08:38:37 -07:00
ted.mielczarek@gmail.com
39be3999c2 bug 415918 - fix version info on mozcrt19.dll. r=bsmedberg 2008-03-05 11:09:52 -08:00