diff options
author | Jason Evans <je@fb.com> | 2015-07-28 15:28:19 (GMT) |
---|---|---|
committer | Jason Evans <je@fb.com> | 2015-08-04 04:49:02 (GMT) |
commit | b49a334a645b854dbb1649f15c38d646fee66738 (patch) | |
tree | 221f5a09618cadbfd0b2570d802ca68971dec440 /Makefile.in | |
parent | d059b9d6a1ac3e7f834260ba001bf0d1599fb0bf (diff) | |
download | jemalloc-b49a334a645b854dbb1649f15c38d646fee66738.zip jemalloc-b49a334a645b854dbb1649f15c38d646fee66738.tar.gz jemalloc-b49a334a645b854dbb1649f15c38d646fee66738.tar.bz2 |
Generalize chunk management hooks.
Add the "arena.<i>.chunk_hooks" mallctl, which replaces and expands on
the "arena.<i>.chunk.{alloc,dalloc,purge}" mallctls. The chunk hooks
allow control over chunk allocation/deallocation, decommit/commit,
purging, and splitting/merging, such that the application can rely on
jemalloc's internal chunk caching and retaining functionality, yet
implement a variety of chunk management mechanisms and policies.
Merge the chunks_[sz]ad_{mmap,dss} red-black trees into
chunks_[sz]ad_retained. This slightly reduces how hard jemalloc tries
to honor the dss precedence setting; prior to this change the precedence
setting was also consulted when recycling chunks.
Fix chunk purging. Don't purge chunks in arena_purge_stashed(); instead
deallocate them in arena_unstash_purged(), so that the dirty memory
linkage remains valid until after the last time it is used.
This resolves #176 and #201.
Diffstat (limited to 'Makefile.in')
-rw-r--r-- | Makefile.in | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Makefile.in b/Makefile.in index 25c2d5a..5084b1a 100644 --- a/Makefile.in +++ b/Makefile.in @@ -82,9 +82,10 @@ C_SRCS := $(srcroot)src/jemalloc.c $(srcroot)src/arena.c \ $(srcroot)src/chunk.c $(srcroot)src/chunk_dss.c \ $(srcroot)src/chunk_mmap.c $(srcroot)src/ckh.c $(srcroot)src/ctl.c \ $(srcroot)src/extent.c $(srcroot)src/hash.c $(srcroot)src/huge.c \ - $(srcroot)src/mb.c $(srcroot)src/mutex.c $(srcroot)src/prof.c \ - $(srcroot)src/quarantine.c $(srcroot)src/rtree.c $(srcroot)src/stats.c \ - $(srcroot)src/tcache.c $(srcroot)src/util.c $(srcroot)src/tsd.c + $(srcroot)src/mb.c $(srcroot)src/mutex.c $(srcroot)src/pages.c \ + $(srcroot)src/prof.c $(srcroot)src/quarantine.c $(srcroot)src/rtree.c \ + $(srcroot)src/stats.c $(srcroot)src/tcache.c $(srcroot)src/util.c \ + $(srcroot)src/tsd.c ifeq ($(enable_valgrind), 1) C_SRCS += $(srcroot)src/valgrind.c endif |