Deleted Added
full compact
ChangeLog (235238) ChangeLog (235322)
1Following are change highlights associated with official releases. Important
2bug fixes are all mentioned, but internal enhancements are omitted here for
3brevity (even though they are more fun to write about). Much more detail can be
4found in the git revision history:
5
6 http://www.canonware.com/cgi-bin/gitweb.cgi?p=jemalloc.git
7 git://canonware.com/jemalloc.git
8
1Following are change highlights associated with official releases. Important
2bug fixes are all mentioned, but internal enhancements are omitted here for
3brevity (even though they are more fun to write about). Much more detail can be
4found in the git revision history:
5
6 http://www.canonware.com/cgi-bin/gitweb.cgi?p=jemalloc.git
7 git://canonware.com/jemalloc.git
8
9* 3.0.0 (XXX not yet released)
9* 3.0.0 (May 11, 2012)
10
11 Although this version adds some major new features, the primary focus is on
12 internal code cleanup that facilitates maintainability and portability, most
13 of which is not reflected in the ChangeLog. This is the first release to
14 incorporate substantial contributions from numerous other developers, and the
15 result is a more broadly useful allocator (see the git revision history for
16 contribution details). Note that the license has been unified, thanks to
17 Facebook granting a license under the same terms as the other copyright
18 holders (see COPYING).
19
20 New features:
21 - Implement Valgrind support, redzones, and quarantine.
22 - Add support for additional platforms:
23 + FreeBSD
24 + Mac OS X Lion
25 + MinGW
10
11 Although this version adds some major new features, the primary focus is on
12 internal code cleanup that facilitates maintainability and portability, most
13 of which is not reflected in the ChangeLog. This is the first release to
14 incorporate substantial contributions from numerous other developers, and the
15 result is a more broadly useful allocator (see the git revision history for
16 contribution details). Note that the license has been unified, thanks to
17 Facebook granting a license under the same terms as the other copyright
18 holders (see COPYING).
19
20 New features:
21 - Implement Valgrind support, redzones, and quarantine.
22 - Add support for additional platforms:
23 + FreeBSD
24 + Mac OS X Lion
25 + MinGW
26 + Windows (no support yet for replacing the system malloc)
26 - Add support for additional architectures:
27 + MIPS
28 + SH4
29 + Tilera
30 - Add support for cross compiling.
31 - Add nallocm(), which rounds a request size up to the nearest size class
32 without actually allocating.
33 - Implement aligned_alloc() (blame C11).
27 - Add support for additional architectures:
28 + MIPS
29 + SH4
30 + Tilera
31 - Add support for cross compiling.
32 - Add nallocm(), which rounds a request size up to the nearest size class
33 without actually allocating.
34 - Implement aligned_alloc() (blame C11).
34 - Add the --disable-munmap option, and make it the default on Linux.
35 - Add the --with-mangling option.
36 - Add the --disable-experimental option.
37 - Add the "thread.tcache.enabled" mallctl.
38 - Add the "opt.prof_final" mallctl.
39 - Update pprof (from gperftools 2.0).
35 - Add the "thread.tcache.enabled" mallctl.
36 - Add the "opt.prof_final" mallctl.
37 - Update pprof (from gperftools 2.0).
38 - Add the --with-mangling option.
39 - Add the --disable-experimental option.
40 - Add the --disable-munmap option, and make it the default on Linux.
41 - Add the --enable-mremap option, which disables use of mremap(2) by default.
40
41 Incompatible changes:
42 - Enable stats by default.
43 - Enable fill by default.
44 - Disable lazy locking by default.
45 - Rename the "tcache.flush" mallctl to "thread.tcache.flush".
46 - Rename the "arenas.pagesize" mallctl to "arenas.page".
47 - Change the "opt.lg_prof_sample" default from 0 to 19 (1 B to 512 KiB).

--- 18 unchanged lines hidden (view full) ---

66
67 Bug fixes:
68 - Fix a statistics-related bug in the "thread.arena" mallctl that could cause
69 invalid statistics and crashes.
70 - Work around TLS deallocation via free() on Linux. This bug could cause
71 write-after-free memory corruption.
72 - Fix a potential deadlock that could occur during interval- and
73 growth-triggered heap profile dumps.
42
43 Incompatible changes:
44 - Enable stats by default.
45 - Enable fill by default.
46 - Disable lazy locking by default.
47 - Rename the "tcache.flush" mallctl to "thread.tcache.flush".
48 - Rename the "arenas.pagesize" mallctl to "arenas.page".
49 - Change the "opt.lg_prof_sample" default from 0 to 19 (1 B to 512 KiB).

--- 18 unchanged lines hidden (view full) ---

68
69 Bug fixes:
70 - Fix a statistics-related bug in the "thread.arena" mallctl that could cause
71 invalid statistics and crashes.
72 - Work around TLS deallocation via free() on Linux. This bug could cause
73 write-after-free memory corruption.
74 - Fix a potential deadlock that could occur during interval- and
75 growth-triggered heap profile dumps.
76 - Fix large calloc() zeroing bugs due to dropping chunk map unzeroed flags.
74 - Fix chunk_alloc_dss() to stop claiming memory is zeroed. This bug could
75 cause memory corruption and crashes with --enable-dss specified.
76 - Fix fork-related bugs that could cause deadlock in children between fork
77 and exec.
78 - Fix malloc_stats_print() to honor 'b' and 'l' in the opts parameter.
79 - Fix realloc(p, 0) to act like free(p).
80 - Do not enforce minimum alignment in memalign().
81 - Check for NULL pointer in malloc_usable_size().

--- 255 unchanged lines hidden ---
77 - Fix chunk_alloc_dss() to stop claiming memory is zeroed. This bug could
78 cause memory corruption and crashes with --enable-dss specified.
79 - Fix fork-related bugs that could cause deadlock in children between fork
80 and exec.
81 - Fix malloc_stats_print() to honor 'b' and 'l' in the opts parameter.
82 - Fix realloc(p, 0) to act like free(p).
83 - Do not enforce minimum alignment in memalign().
84 - Check for NULL pointer in malloc_usable_size().

--- 255 unchanged lines hidden ---