2957130e1228586b3a8f2c99f6adb808f4e982a2efe91855c86f6b1a6851e638
* Add the *allocx() API, which is a successor to the experimental *allocm() API. The *allocx() functions are slightly simpler to use because they have fewer parameters, they directly return the results of primary interest, and mallocx()/rallocx() avoid the strict aliasing pitfall that allocm()/rallocx() share with posix_memalign(). Note that *allocm() is slated for removal in the next non-bugfix release. * Add support for LinuxThreads. * Unless heap profiling is enabled, disable floating point code and don't link with libm. This, in combination with e.g. EXTRA_CFLAGS=-mno-sse on x64 systems, makes it possible to completely disable floating point register use. Some versions of glibc neglect to save/restore caller-saved floating point registers during dynamic lazy symbol loading, and the symbol loading code uses whatever malloc the application happens to have linked/loaded with, the result being potential floating point register corruption. * Report ENOMEM rather than EINVAL if an OOM occurs during heap profiling backtrace creation in imemalign(). This bug impacted posix_memalign() and aligned_alloc(). * Fix a file descriptor leak in a prof_dump_maps() error path. * Fix prof_dump() to close the dump file descriptor for all relevant error paths. * Fix rallocm() to use the arena specified by the ALLOCM_ARENA(s) flag for allocation, not just deallocation. * Fix a data race for large allocation stats counters. * Fix a potential infinite loop during thread exit. This bug occurred on Solaris, and could affect other platforms with similar pthreads TSD implementations. * Don't junk-fill reallocations unless usable size changes. This fixes a violation of the *allocx()/*allocm() semantics. * Fix growing large reallocation to junk fill new space. OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/jemalloc?expand=0&rev=17
Description
No description provided
Languages
Diff
100%