Go to file
Jason Evans de6fbdb72c Fix chunk_alloc_mmap() bugs.
Simplify chunk_alloc_mmap() to no longer attempt map extension.  The
extra complexity isn't warranted, because although in the success case
it saves one system call as compared to immediately falling back to
chunk_alloc_mmap_slow(), it also makes the failure case even more
expensive.  This simplification removes two bugs:

- For Windows platforms, pages_unmap() wasn't being called for unaligned
  mappings prior to falling back to chunk_alloc_mmap_slow().  This
  caused permanent virtual memory leaks.
- For non-Windows platforms, alignment greater than chunksize caused
  pages_map() to be called with size 0 when attempting map extension.
  This always resulted in an mmap() error, and subsequent fallback to
  chunk_alloc_mmap_slow().
2012-05-09 13:05:04 -07:00
bin Few configure.ac adjustments 2012-04-30 17:13:45 -07:00
doc Fix Valgrind URL in documentation. 2012-04-25 23:17:57 -07:00
include Use "standard" printf prefixes instead of MSVC ones in inttypes.h 2012-05-02 16:32:37 -07:00
src Fix chunk_alloc_mmap() bugs. 2012-05-09 13:05:04 -07:00
test Use Get/SetLastError on Win32 2012-04-30 16:50:55 -07:00
.gitignore Simplify small size class infrastructure. 2012-02-28 16:50:47 -08:00
autogen.sh Move repo contents in jemalloc/ to top level. 2011-03-31 20:36:17 -07:00
ChangeLog Fix the "epoch" mallctl. 2012-04-25 13:12:46 -07:00
config.guess Update config.guess and config.sub. 2012-03-12 15:57:24 -07:00
config.stamp.in Move repo contents in jemalloc/ to top level. 2011-03-31 20:36:17 -07:00
config.sub Update config.guess and config.sub. 2012-03-12 15:57:24 -07:00
configure.ac Use "hardcoded" dependencies when compiler doesn't support -MM 2012-05-02 16:31:17 -07:00
COPYING Unify license. 2012-03-04 10:46:12 -08:00
INSTALL Clean up documentation and formatting. 2012-04-23 12:49:23 -07:00
install-sh Move repo contents in jemalloc/ to top level. 2011-03-31 20:36:17 -07:00
Makefile.in Use "hardcoded" dependencies when compiler doesn't support -MM 2012-05-02 16:31:17 -07:00
README Clean up documentation and formatting. 2012-04-23 12:49:23 -07:00

jemalloc is a general-purpose scalable concurrent malloc(3) implementation.
This distribution is a "portable" implementation that currently targets
FreeBSD, Linux, Apple OS X, and MinGW.  jemalloc is included as the default
allocator in the FreeBSD and NetBSD operating systems, and it is used by the
Mozilla Firefox web browser on Microsoft Windows-related platforms.  Depending
on your needs, one of the other divergent versions may suit your needs better
than this distribution.

The COPYING file contains copyright and licensing information.

The INSTALL file contains information on how to configure, build, and install
jemalloc.

The ChangeLog file contains a brief summary of changes for each release.

URL: http://www.canonware.com/jemalloc/