Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | Following are change highlights associated with official releases. Important |
michael@0 | 2 | bug fixes are all mentioned, but internal enhancements are omitted here for |
michael@0 | 3 | brevity (even though they are more fun to write about). Much more detail can be |
michael@0 | 4 | found in the git revision history: |
michael@0 | 5 | |
michael@0 | 6 | http://www.canonware.com/cgi-bin/gitweb.cgi?p=jemalloc.git |
michael@0 | 7 | git://canonware.com/jemalloc.git |
michael@0 | 8 | |
michael@0 | 9 | * 3.x.x (Not yet released) |
michael@0 | 10 | |
michael@0 | 11 | Bug fixes: |
michael@0 | 12 | - Fix "arenas.extend" mallctl to output the number of arenas. |
michael@0 | 13 | |
michael@0 | 14 | * 3.2.0 (November 9, 2012) |
michael@0 | 15 | |
michael@0 | 16 | In addition to a couple of bug fixes, this version modifies page run |
michael@0 | 17 | allocation and dirty page purging algorithms in order to better control |
michael@0 | 18 | page-level virtual memory fragmentation. |
michael@0 | 19 | |
michael@0 | 20 | Incompatible changes: |
michael@0 | 21 | - Change the "opt.lg_dirty_mult" default from 5 to 3 (32:1 to 8:1). |
michael@0 | 22 | |
michael@0 | 23 | Bug fixes: |
michael@0 | 24 | - Fix dss/mmap allocation precedence code to use recyclable mmap memory only |
michael@0 | 25 | after primary dss allocation fails. |
michael@0 | 26 | - Fix deadlock in the "arenas.purge" mallctl. This regression was introduced |
michael@0 | 27 | in 3.1.0 by the addition of the "arena.<i>.purge" mallctl. |
michael@0 | 28 | |
michael@0 | 29 | * 3.1.0 (October 16, 2012) |
michael@0 | 30 | |
michael@0 | 31 | New features: |
michael@0 | 32 | - Auto-detect whether running inside Valgrind, thus removing the need to |
michael@0 | 33 | manually specify MALLOC_CONF=valgrind:true. |
michael@0 | 34 | - Add the "arenas.extend" mallctl, which allows applications to create |
michael@0 | 35 | manually managed arenas. |
michael@0 | 36 | - Add the ALLOCM_ARENA() flag for {,r,d}allocm(). |
michael@0 | 37 | - Add the "opt.dss", "arena.<i>.dss", and "stats.arenas.<i>.dss" mallctls, |
michael@0 | 38 | which provide control over dss/mmap precedence. |
michael@0 | 39 | - Add the "arena.<i>.purge" mallctl, which obsoletes "arenas.purge". |
michael@0 | 40 | - Define LG_QUANTUM for hppa. |
michael@0 | 41 | |
michael@0 | 42 | Incompatible changes: |
michael@0 | 43 | - Disable tcache by default if running inside Valgrind, in order to avoid |
michael@0 | 44 | making unallocated objects appear reachable to Valgrind. |
michael@0 | 45 | - Drop const from malloc_usable_size() argument on Linux. |
michael@0 | 46 | |
michael@0 | 47 | Bug fixes: |
michael@0 | 48 | - Fix heap profiling crash if sampled object is freed via realloc(p, 0). |
michael@0 | 49 | - Remove const from __*_hook variable declarations, so that glibc can modify |
michael@0 | 50 | them during process forking. |
michael@0 | 51 | - Fix mlockall(2)/madvise(2) interaction. |
michael@0 | 52 | - Fix fork(2)-related deadlocks. |
michael@0 | 53 | - Fix error return value for "thread.tcache.enabled" mallctl. |
michael@0 | 54 | |
michael@0 | 55 | * 3.0.0 (May 11, 2012) |
michael@0 | 56 | |
michael@0 | 57 | Although this version adds some major new features, the primary focus is on |
michael@0 | 58 | internal code cleanup that facilitates maintainability and portability, most |
michael@0 | 59 | of which is not reflected in the ChangeLog. This is the first release to |
michael@0 | 60 | incorporate substantial contributions from numerous other developers, and the |
michael@0 | 61 | result is a more broadly useful allocator (see the git revision history for |
michael@0 | 62 | contribution details). Note that the license has been unified, thanks to |
michael@0 | 63 | Facebook granting a license under the same terms as the other copyright |
michael@0 | 64 | holders (see COPYING). |
michael@0 | 65 | |
michael@0 | 66 | New features: |
michael@0 | 67 | - Implement Valgrind support, redzones, and quarantine. |
michael@0 | 68 | - Add support for additional platforms: |
michael@0 | 69 | + FreeBSD |
michael@0 | 70 | + Mac OS X Lion |
michael@0 | 71 | + MinGW |
michael@0 | 72 | + Windows (no support yet for replacing the system malloc) |
michael@0 | 73 | - Add support for additional architectures: |
michael@0 | 74 | + MIPS |
michael@0 | 75 | + SH4 |
michael@0 | 76 | + Tilera |
michael@0 | 77 | - Add support for cross compiling. |
michael@0 | 78 | - Add nallocm(), which rounds a request size up to the nearest size class |
michael@0 | 79 | without actually allocating. |
michael@0 | 80 | - Implement aligned_alloc() (blame C11). |
michael@0 | 81 | - Add the "thread.tcache.enabled" mallctl. |
michael@0 | 82 | - Add the "opt.prof_final" mallctl. |
michael@0 | 83 | - Update pprof (from gperftools 2.0). |
michael@0 | 84 | - Add the --with-mangling option. |
michael@0 | 85 | - Add the --disable-experimental option. |
michael@0 | 86 | - Add the --disable-munmap option, and make it the default on Linux. |
michael@0 | 87 | - Add the --enable-mremap option, which disables use of mremap(2) by default. |
michael@0 | 88 | |
michael@0 | 89 | Incompatible changes: |
michael@0 | 90 | - Enable stats by default. |
michael@0 | 91 | - Enable fill by default. |
michael@0 | 92 | - Disable lazy locking by default. |
michael@0 | 93 | - Rename the "tcache.flush" mallctl to "thread.tcache.flush". |
michael@0 | 94 | - Rename the "arenas.pagesize" mallctl to "arenas.page". |
michael@0 | 95 | - Change the "opt.lg_prof_sample" default from 0 to 19 (1 B to 512 KiB). |
michael@0 | 96 | - Change the "opt.prof_accum" default from true to false. |
michael@0 | 97 | |
michael@0 | 98 | Removed features: |
michael@0 | 99 | - Remove the swap feature, including the "config.swap", "swap.avail", |
michael@0 | 100 | "swap.prezeroed", "swap.nfds", and "swap.fds" mallctls. |
michael@0 | 101 | - Remove highruns statistics, including the |
michael@0 | 102 | "stats.arenas.<i>.bins.<j>.highruns" and |
michael@0 | 103 | "stats.arenas.<i>.lruns.<j>.highruns" mallctls. |
michael@0 | 104 | - As part of small size class refactoring, remove the "opt.lg_[qc]space_max", |
michael@0 | 105 | "arenas.cacheline", "arenas.subpage", "arenas.[tqcs]space_{min,max}", and |
michael@0 | 106 | "arenas.[tqcs]bins" mallctls. |
michael@0 | 107 | - Remove the "arenas.chunksize" mallctl. |
michael@0 | 108 | - Remove the "opt.lg_prof_tcmax" option. |
michael@0 | 109 | - Remove the "opt.lg_prof_bt_max" option. |
michael@0 | 110 | - Remove the "opt.lg_tcache_gc_sweep" option. |
michael@0 | 111 | - Remove the --disable-tiny option, including the "config.tiny" mallctl. |
michael@0 | 112 | - Remove the --enable-dynamic-page-shift configure option. |
michael@0 | 113 | - Remove the --enable-sysv configure option. |
michael@0 | 114 | |
michael@0 | 115 | Bug fixes: |
michael@0 | 116 | - Fix a statistics-related bug in the "thread.arena" mallctl that could cause |
michael@0 | 117 | invalid statistics and crashes. |
michael@0 | 118 | - Work around TLS deallocation via free() on Linux. This bug could cause |
michael@0 | 119 | write-after-free memory corruption. |
michael@0 | 120 | - Fix a potential deadlock that could occur during interval- and |
michael@0 | 121 | growth-triggered heap profile dumps. |
michael@0 | 122 | - Fix large calloc() zeroing bugs due to dropping chunk map unzeroed flags. |
michael@0 | 123 | - Fix chunk_alloc_dss() to stop claiming memory is zeroed. This bug could |
michael@0 | 124 | cause memory corruption and crashes with --enable-dss specified. |
michael@0 | 125 | - Fix fork-related bugs that could cause deadlock in children between fork |
michael@0 | 126 | and exec. |
michael@0 | 127 | - Fix malloc_stats_print() to honor 'b' and 'l' in the opts parameter. |
michael@0 | 128 | - Fix realloc(p, 0) to act like free(p). |
michael@0 | 129 | - Do not enforce minimum alignment in memalign(). |
michael@0 | 130 | - Check for NULL pointer in malloc_usable_size(). |
michael@0 | 131 | - Fix an off-by-one heap profile statistics bug that could be observed in |
michael@0 | 132 | interval- and growth-triggered heap profiles. |
michael@0 | 133 | - Fix the "epoch" mallctl to update cached stats even if the passed in epoch |
michael@0 | 134 | is 0. |
michael@0 | 135 | - Fix bin->runcur management to fix a layout policy bug. This bug did not |
michael@0 | 136 | affect correctness. |
michael@0 | 137 | - Fix a bug in choose_arena_hard() that potentially caused more arenas to be |
michael@0 | 138 | initialized than necessary. |
michael@0 | 139 | - Add missing "opt.lg_tcache_max" mallctl implementation. |
michael@0 | 140 | - Use glibc allocator hooks to make mixed allocator usage less likely. |
michael@0 | 141 | - Fix build issues for --disable-tcache. |
michael@0 | 142 | - Don't mangle pthread_create() when --with-private-namespace is specified. |
michael@0 | 143 | |
michael@0 | 144 | * 2.2.5 (November 14, 2011) |
michael@0 | 145 | |
michael@0 | 146 | Bug fixes: |
michael@0 | 147 | - Fix huge_ralloc() race when using mremap(2). This is a serious bug that |
michael@0 | 148 | could cause memory corruption and/or crashes. |
michael@0 | 149 | - Fix huge_ralloc() to maintain chunk statistics. |
michael@0 | 150 | - Fix malloc_stats_print(..., "a") output. |
michael@0 | 151 | |
michael@0 | 152 | * 2.2.4 (November 5, 2011) |
michael@0 | 153 | |
michael@0 | 154 | Bug fixes: |
michael@0 | 155 | - Initialize arenas_tsd before using it. This bug existed for 2.2.[0-3], as |
michael@0 | 156 | well as for --disable-tls builds in earlier releases. |
michael@0 | 157 | - Do not assume a 4 KiB page size in test/rallocm.c. |
michael@0 | 158 | |
michael@0 | 159 | * 2.2.3 (August 31, 2011) |
michael@0 | 160 | |
michael@0 | 161 | This version fixes numerous bugs related to heap profiling. |
michael@0 | 162 | |
michael@0 | 163 | Bug fixes: |
michael@0 | 164 | - Fix a prof-related race condition. This bug could cause memory corruption, |
michael@0 | 165 | but only occurred in non-default configurations (prof_accum:false). |
michael@0 | 166 | - Fix off-by-one backtracing issues (make sure that prof_alloc_prep() is |
michael@0 | 167 | excluded from backtraces). |
michael@0 | 168 | - Fix a prof-related bug in realloc() (only triggered by OOM errors). |
michael@0 | 169 | - Fix prof-related bugs in allocm() and rallocm(). |
michael@0 | 170 | - Fix prof_tdata_cleanup() for --disable-tls builds. |
michael@0 | 171 | - Fix a relative include path, to fix objdir builds. |
michael@0 | 172 | |
michael@0 | 173 | * 2.2.2 (July 30, 2011) |
michael@0 | 174 | |
michael@0 | 175 | Bug fixes: |
michael@0 | 176 | - Fix a build error for --disable-tcache. |
michael@0 | 177 | - Fix assertions in arena_purge() (for real this time). |
michael@0 | 178 | - Add the --with-private-namespace option. This is a workaround for symbol |
michael@0 | 179 | conflicts that can inadvertently arise when using static libraries. |
michael@0 | 180 | |
michael@0 | 181 | * 2.2.1 (March 30, 2011) |
michael@0 | 182 | |
michael@0 | 183 | Bug fixes: |
michael@0 | 184 | - Implement atomic operations for x86/x64. This fixes compilation failures |
michael@0 | 185 | for versions of gcc that are still in wide use. |
michael@0 | 186 | - Fix an assertion in arena_purge(). |
michael@0 | 187 | |
michael@0 | 188 | * 2.2.0 (March 22, 2011) |
michael@0 | 189 | |
michael@0 | 190 | This version incorporates several improvements to algorithms and data |
michael@0 | 191 | structures that tend to reduce fragmentation and increase speed. |
michael@0 | 192 | |
michael@0 | 193 | New features: |
michael@0 | 194 | - Add the "stats.cactive" mallctl. |
michael@0 | 195 | - Update pprof (from google-perftools 1.7). |
michael@0 | 196 | - Improve backtracing-related configuration logic, and add the |
michael@0 | 197 | --disable-prof-libgcc option. |
michael@0 | 198 | |
michael@0 | 199 | Bug fixes: |
michael@0 | 200 | - Change default symbol visibility from "internal", to "hidden", which |
michael@0 | 201 | decreases the overhead of library-internal function calls. |
michael@0 | 202 | - Fix symbol visibility so that it is also set on OS X. |
michael@0 | 203 | - Fix a build dependency regression caused by the introduction of the .pic.o |
michael@0 | 204 | suffix for PIC object files. |
michael@0 | 205 | - Add missing checks for mutex initialization failures. |
michael@0 | 206 | - Don't use libgcc-based backtracing except on x64, where it is known to work. |
michael@0 | 207 | - Fix deadlocks on OS X that were due to memory allocation in |
michael@0 | 208 | pthread_mutex_lock(). |
michael@0 | 209 | - Heap profiling-specific fixes: |
michael@0 | 210 | + Fix memory corruption due to integer overflow in small region index |
michael@0 | 211 | computation, when using a small enough sample interval that profiling |
michael@0 | 212 | context pointers are stored in small run headers. |
michael@0 | 213 | + Fix a bootstrap ordering bug that only occurred with TLS disabled. |
michael@0 | 214 | + Fix a rallocm() rsize bug. |
michael@0 | 215 | + Fix error detection bugs for aligned memory allocation. |
michael@0 | 216 | |
michael@0 | 217 | * 2.1.3 (March 14, 2011) |
michael@0 | 218 | |
michael@0 | 219 | Bug fixes: |
michael@0 | 220 | - Fix a cpp logic regression (due to the "thread.{de,}allocatedp" mallctl fix |
michael@0 | 221 | for OS X in 2.1.2). |
michael@0 | 222 | - Fix a "thread.arena" mallctl bug. |
michael@0 | 223 | - Fix a thread cache stats merging bug. |
michael@0 | 224 | |
michael@0 | 225 | * 2.1.2 (March 2, 2011) |
michael@0 | 226 | |
michael@0 | 227 | Bug fixes: |
michael@0 | 228 | - Fix "thread.{de,}allocatedp" mallctl for OS X. |
michael@0 | 229 | - Add missing jemalloc.a to build system. |
michael@0 | 230 | |
michael@0 | 231 | * 2.1.1 (January 31, 2011) |
michael@0 | 232 | |
michael@0 | 233 | Bug fixes: |
michael@0 | 234 | - Fix aligned huge reallocation (affected allocm()). |
michael@0 | 235 | - Fix the ALLOCM_LG_ALIGN macro definition. |
michael@0 | 236 | - Fix a heap dumping deadlock. |
michael@0 | 237 | - Fix a "thread.arena" mallctl bug. |
michael@0 | 238 | |
michael@0 | 239 | * 2.1.0 (December 3, 2010) |
michael@0 | 240 | |
michael@0 | 241 | This version incorporates some optimizations that can't quite be considered |
michael@0 | 242 | bug fixes. |
michael@0 | 243 | |
michael@0 | 244 | New features: |
michael@0 | 245 | - Use Linux's mremap(2) for huge object reallocation when possible. |
michael@0 | 246 | - Avoid locking in mallctl*() when possible. |
michael@0 | 247 | - Add the "thread.[de]allocatedp" mallctl's. |
michael@0 | 248 | - Convert the manual page source from roff to DocBook, and generate both roff |
michael@0 | 249 | and HTML manuals. |
michael@0 | 250 | |
michael@0 | 251 | Bug fixes: |
michael@0 | 252 | - Fix a crash due to incorrect bootstrap ordering. This only impacted |
michael@0 | 253 | --enable-debug --enable-dss configurations. |
michael@0 | 254 | - Fix a minor statistics bug for mallctl("swap.avail", ...). |
michael@0 | 255 | |
michael@0 | 256 | * 2.0.1 (October 29, 2010) |
michael@0 | 257 | |
michael@0 | 258 | Bug fixes: |
michael@0 | 259 | - Fix a race condition in heap profiling that could cause undefined behavior |
michael@0 | 260 | if "opt.prof_accum" were disabled. |
michael@0 | 261 | - Add missing mutex unlocks for some OOM error paths in the heap profiling |
michael@0 | 262 | code. |
michael@0 | 263 | - Fix a compilation error for non-C99 builds. |
michael@0 | 264 | |
michael@0 | 265 | * 2.0.0 (October 24, 2010) |
michael@0 | 266 | |
michael@0 | 267 | This version focuses on the experimental *allocm() API, and on improved |
michael@0 | 268 | run-time configuration/introspection. Nonetheless, numerous performance |
michael@0 | 269 | improvements are also included. |
michael@0 | 270 | |
michael@0 | 271 | New features: |
michael@0 | 272 | - Implement the experimental {,r,s,d}allocm() API, which provides a superset |
michael@0 | 273 | of the functionality available via malloc(), calloc(), posix_memalign(), |
michael@0 | 274 | realloc(), malloc_usable_size(), and free(). These functions can be used to |
michael@0 | 275 | allocate/reallocate aligned zeroed memory, ask for optional extra memory |
michael@0 | 276 | during reallocation, prevent object movement during reallocation, etc. |
michael@0 | 277 | - Replace JEMALLOC_OPTIONS/JEMALLOC_PROF_PREFIX with MALLOC_CONF, which is |
michael@0 | 278 | more human-readable, and more flexible. For example: |
michael@0 | 279 | JEMALLOC_OPTIONS=AJP |
michael@0 | 280 | is now: |
michael@0 | 281 | MALLOC_CONF=abort:true,fill:true,stats_print:true |
michael@0 | 282 | - Port to Apple OS X. Sponsored by Mozilla. |
michael@0 | 283 | - Make it possible for the application to control thread-->arena mappings via |
michael@0 | 284 | the "thread.arena" mallctl. |
michael@0 | 285 | - Add compile-time support for all TLS-related functionality via pthreads TSD. |
michael@0 | 286 | This is mainly of interest for OS X, which does not support TLS, but has a |
michael@0 | 287 | TSD implementation with similar performance. |
michael@0 | 288 | - Override memalign() and valloc() if they are provided by the system. |
michael@0 | 289 | - Add the "arenas.purge" mallctl, which can be used to synchronously purge all |
michael@0 | 290 | dirty unused pages. |
michael@0 | 291 | - Make cumulative heap profiling data optional, so that it is possible to |
michael@0 | 292 | limit the amount of memory consumed by heap profiling data structures. |
michael@0 | 293 | - Add per thread allocation counters that can be accessed via the |
michael@0 | 294 | "thread.allocated" and "thread.deallocated" mallctls. |
michael@0 | 295 | |
michael@0 | 296 | Incompatible changes: |
michael@0 | 297 | - Remove JEMALLOC_OPTIONS and malloc_options (see MALLOC_CONF above). |
michael@0 | 298 | - Increase default backtrace depth from 4 to 128 for heap profiling. |
michael@0 | 299 | - Disable interval-based profile dumps by default. |
michael@0 | 300 | |
michael@0 | 301 | Bug fixes: |
michael@0 | 302 | - Remove bad assertions in fork handler functions. These assertions could |
michael@0 | 303 | cause aborts for some combinations of configure settings. |
michael@0 | 304 | - Fix strerror_r() usage to deal with non-standard semantics in GNU libc. |
michael@0 | 305 | - Fix leak context reporting. This bug tended to cause the number of contexts |
michael@0 | 306 | to be underreported (though the reported number of objects and bytes were |
michael@0 | 307 | correct). |
michael@0 | 308 | - Fix a realloc() bug for large in-place growing reallocation. This bug could |
michael@0 | 309 | cause memory corruption, but it was hard to trigger. |
michael@0 | 310 | - Fix an allocation bug for small allocations that could be triggered if |
michael@0 | 311 | multiple threads raced to create a new run of backing pages. |
michael@0 | 312 | - Enhance the heap profiler to trigger samples based on usable size, rather |
michael@0 | 313 | than request size. |
michael@0 | 314 | - Fix a heap profiling bug due to sometimes losing track of requested object |
michael@0 | 315 | size for sampled objects. |
michael@0 | 316 | |
michael@0 | 317 | * 1.0.3 (August 12, 2010) |
michael@0 | 318 | |
michael@0 | 319 | Bug fixes: |
michael@0 | 320 | - Fix the libunwind-based implementation of stack backtracing (used for heap |
michael@0 | 321 | profiling). This bug could cause zero-length backtraces to be reported. |
michael@0 | 322 | - Add a missing mutex unlock in library initialization code. If multiple |
michael@0 | 323 | threads raced to initialize malloc, some of them could end up permanently |
michael@0 | 324 | blocked. |
michael@0 | 325 | |
michael@0 | 326 | * 1.0.2 (May 11, 2010) |
michael@0 | 327 | |
michael@0 | 328 | Bug fixes: |
michael@0 | 329 | - Fix junk filling of large objects, which could cause memory corruption. |
michael@0 | 330 | - Add MAP_NORESERVE support for chunk mapping, because otherwise virtual |
michael@0 | 331 | memory limits could cause swap file configuration to fail. Contributed by |
michael@0 | 332 | Jordan DeLong. |
michael@0 | 333 | |
michael@0 | 334 | * 1.0.1 (April 14, 2010) |
michael@0 | 335 | |
michael@0 | 336 | Bug fixes: |
michael@0 | 337 | - Fix compilation when --enable-fill is specified. |
michael@0 | 338 | - Fix threads-related profiling bugs that affected accuracy and caused memory |
michael@0 | 339 | to be leaked during thread exit. |
michael@0 | 340 | - Fix dirty page purging race conditions that could cause crashes. |
michael@0 | 341 | - Fix crash in tcache flushing code during thread destruction. |
michael@0 | 342 | |
michael@0 | 343 | * 1.0.0 (April 11, 2010) |
michael@0 | 344 | |
michael@0 | 345 | This release focuses on speed and run-time introspection. Numerous |
michael@0 | 346 | algorithmic improvements make this release substantially faster than its |
michael@0 | 347 | predecessors. |
michael@0 | 348 | |
michael@0 | 349 | New features: |
michael@0 | 350 | - Implement autoconf-based configuration system. |
michael@0 | 351 | - Add mallctl*(), for the purposes of introspection and run-time |
michael@0 | 352 | configuration. |
michael@0 | 353 | - Make it possible for the application to manually flush a thread's cache, via |
michael@0 | 354 | the "tcache.flush" mallctl. |
michael@0 | 355 | - Base maximum dirty page count on proportion of active memory. |
michael@0 | 356 | - Compute various addtional run-time statistics, including per size class |
michael@0 | 357 | statistics for large objects. |
michael@0 | 358 | - Expose malloc_stats_print(), which can be called repeatedly by the |
michael@0 | 359 | application. |
michael@0 | 360 | - Simplify the malloc_message() signature to only take one string argument, |
michael@0 | 361 | and incorporate an opaque data pointer argument for use by the application |
michael@0 | 362 | in combination with malloc_stats_print(). |
michael@0 | 363 | - Add support for allocation backed by one or more swap files, and allow the |
michael@0 | 364 | application to disable over-commit if swap files are in use. |
michael@0 | 365 | - Implement allocation profiling and leak checking. |
michael@0 | 366 | |
michael@0 | 367 | Removed features: |
michael@0 | 368 | - Remove the dynamic arena rebalancing code, since thread-specific caching |
michael@0 | 369 | reduces its utility. |
michael@0 | 370 | |
michael@0 | 371 | Bug fixes: |
michael@0 | 372 | - Modify chunk allocation to work when address space layout randomization |
michael@0 | 373 | (ASLR) is in use. |
michael@0 | 374 | - Fix thread cleanup bugs related to TLS destruction. |
michael@0 | 375 | - Handle 0-size allocation requests in posix_memalign(). |
michael@0 | 376 | - Fix a chunk leak. The leaked chunks were never touched, so this impacted |
michael@0 | 377 | virtual memory usage, but not physical memory usage. |
michael@0 | 378 | |
michael@0 | 379 | * linux_2008082[78]a (August 27/28, 2008) |
michael@0 | 380 | |
michael@0 | 381 | These snapshot releases are the simple result of incorporating Linux-specific |
michael@0 | 382 | support into the FreeBSD malloc sources. |
michael@0 | 383 | |
michael@0 | 384 | -------------------------------------------------------------------------------- |
michael@0 | 385 | vim:filetype=text:textwidth=80 |