summaryrefslogtreecommitdiffstats
path: root/config.sub
diff options
context:
space:
mode:
authorJason Evans <je@fb.com>2012-05-09 20:05:04 (GMT)
committerJason Evans <je@fb.com>2012-05-09 20:05:04 (GMT)
commitde6fbdb72c6e1401b36f8f2073404645bac6cd2b (patch)
tree701715206d28fa76accb42b88f441566f6595a45 /config.sub
parent34a8cf6c4029c09e1db776b7027a9c1b31f9e5b4 (diff)
downloadjemalloc-de6fbdb72c6e1401b36f8f2073404645bac6cd2b.zip
jemalloc-de6fbdb72c6e1401b36f8f2073404645bac6cd2b.tar.gz
jemalloc-de6fbdb72c6e1401b36f8f2073404645bac6cd2b.tar.bz2
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().
Diffstat (limited to 'config.sub')
0 files changed, 0 insertions, 0 deletions