Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update JEMalloc just in case #9558

Merged
merged 3 commits into from
Mar 9, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion contrib/jemalloc
Submodule jemalloc updated 91 files
+8 −8 .appveyor.yml
+21 −0 .cirrus.yml
+48 −0 .travis.yml
+2 −2 COPYING
+137 −1 ChangeLog
+5 −0 INSTALL.md
+42 −5 Makefile.in
+2 −1 bin/jeprof.in
+153 −63 configure.ac
+111 −16 doc/jemalloc.xml.in
+8 −5 include/jemalloc/internal/arena_externs.h
+55 −28 include/jemalloc/internal/arena_inlines_b.h
+16 −3 include/jemalloc/internal/arena_stats.h
+4 −2 include/jemalloc/internal/arena_structs_b.h
+4 −4 include/jemalloc/internal/arena_types.h
+7 −0 include/jemalloc/internal/atomic.h
+4 −2 include/jemalloc/internal/atomic_gcc_atomic.h
+1 −0 include/jemalloc/internal/background_thread_structs.h
+17 −4 include/jemalloc/internal/bin.h
+3 −0 include/jemalloc/internal/bin_stats.h
+17 −0 include/jemalloc/internal/bin_types.h
+19 −0 include/jemalloc/internal/bit_util.h
+14 −2 include/jemalloc/internal/cache_bin.h
+2 −0 include/jemalloc/internal/ctl.h
+20 −15 include/jemalloc/internal/emitter.h
+7 −1 include/jemalloc/internal/extent_externs.h
+67 −10 include/jemalloc/internal/extent_inlines.h
+34 −2 include/jemalloc/internal/extent_structs.h
+8 −0 include/jemalloc/internal/extent_types.h
+13 −22 include/jemalloc/internal/jemalloc_internal_defs.h.in
+2 −0 include/jemalloc/internal/jemalloc_internal_externs.h
+3 −1 include/jemalloc/internal/jemalloc_internal_inlines_a.h
+12 −10 include/jemalloc/internal/jemalloc_internal_macros.h
+21 −2 include/jemalloc/internal/jemalloc_preamble.h.in
+1 −1 include/jemalloc/internal/malloc_io.h
+37 −16 include/jemalloc/internal/mutex.h
+17 −8 include/jemalloc/internal/mutex_prof.h
+2 −1 include/jemalloc/internal/prof_inlines_b.h
+36 −0 include/jemalloc/internal/rtree.h
+26 −0 include/jemalloc/internal/safety_check.h
+21 −8 include/jemalloc/internal/sc.h
+6 −4 include/jemalloc/internal/tcache_inlines.h
+1 −1 include/jemalloc/internal/tcache_structs.h
+3 −0 include/jemalloc/internal/tcache_types.h
+20 −2 include/jemalloc/internal/tsd.h
+4 −2 include/jemalloc/internal/tsd_malloc_thread_cleanup.h
+3 −1 include/jemalloc/internal/tsd_tls.h
+3 −0 include/jemalloc/jemalloc_defs.h.in
+6 −0 include/jemalloc/jemalloc_macros.h.in
+2 −1 msvc/projects/vc2015/jemalloc/jemalloc.vcxproj
+4 −1 msvc/projects/vc2015/jemalloc/jemalloc.vcxproj.filters
+2 −1 msvc/projects/vc2017/jemalloc/jemalloc.vcxproj
+4 −1 msvc/projects/vc2017/jemalloc/jemalloc.vcxproj.filters
+1 −0 scripts/gen_run_tests.py
+2 −0 scripts/gen_travis.py
+229 −81 src/arena.c
+34 −10 src/background_thread.c
+38 −4 src/bin.c
+385 −19 src/ctl.c
+213 −66 src/extent.c
+4 −3 src/extent_dss.c
+2 −2 src/extent_mmap.c
+365 −163 src/jemalloc.c
+2 −2 src/jemalloc_cpp.cpp
+1 −2 src/malloc_io.c
+3 −4 src/mutex.c
+6 −0 src/pages.c
+26 −24 src/prof.c
+24 −0 src/safety_check.c
+290 −228 src/stats.c
+85 −28 src/tcache.c
+11 −10 src/tsd.c
+1 −1 test/include/test/jemalloc_test.h.in
+0 −2 test/include/test/mtx.h
+3 −3 test/integration/mallocx.c
+3 −2 test/integration/posix_memalign.c
+0 −7 test/src/mtx.c
+7 −2 test/unit/arena_reset.c
+154 −0 test/unit/binshard.c
+3 −0 test/unit/binshard.sh
+9 −3 test/unit/decay.c
+269 −0 test/unit/extent_util.c
+1 −1 test/unit/huge.c
+4 −2 test/unit/mallctl.c
+7 −5 test/unit/prof_log.c
+3 −0 test/unit/retained.c
+4 −4 test/unit/rtree.c
+156 −0 test/unit/safety_check.c
+5 −0 test/unit/safety_check.sh
+2 −1 test/unit/slab.c
+6 −1 test/unit/stats.c
1 change: 1 addition & 0 deletions contrib/jemalloc-cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ ${JEMALLOC_SOURCE_DIR}/src/test_hooks.c
${JEMALLOC_SOURCE_DIR}/src/ticker.c
${JEMALLOC_SOURCE_DIR}/src/tsd.c
${JEMALLOC_SOURCE_DIR}/src/witness.c
${JEMALLOC_SOURCE_DIR}/src/safety_check.c
)

if(OS_DARWIN)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -379,4 +379,10 @@
*/
#define JEMALLOC_STRERROR_R_RETURNS_CHAR_WITH_GNU_SOURCE

/*
* popcount*() functions to use for bitmapping.
*/
#define JEMALLOC_INTERNAL_POPCOUNTL __builtin_popcountl
#define JEMALLOC_INTERNAL_POPCOUNT __builtin_popcount

#endif /* JEMALLOC_INTERNAL_DEFS_H_ */
Original file line number Diff line number Diff line change
Expand Up @@ -191,4 +191,26 @@ static const bool have_background_thread =
#endif
;

#define JEMALLOC_GCC_U8_ATOMIC_ATOMICS 1
#define JEMALLOC_GCC_U8_SYNC_ATOMICS 1

/*
* Are extra safety checks enabled; things like checking the size of sized
* deallocations, double-frees, etc.
*/
static const bool config_opt_safety_checks =
#ifdef JEMALLOC_OPT_SAFETY_CHECKS
true
#elif defined(JEMALLOC_DEBUG)
/*
* This lets us only guard safety checks by one flag instead of two; fast
* checks can guard solely by config_opt_safety_checks and run in debug mode
* too.
*/
true
#else
false
#endif
;

#endif /* JEMALLOC_PREAMBLE_H */
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
#include <limits.h>
#include <strings.h>

#define JEMALLOC_VERSION "5.1.0-97-gcd2931ad9bbd78208565716ab102e86d858c2fff"
#define JEMALLOC_VERSION "5.2.1-0-gea6b3e973b477b8061e0076bb257dbd7f3faa756"
#define JEMALLOC_VERSION_MAJOR 5
#define JEMALLOC_VERSION_MINOR 1
#define JEMALLOC_VERSION_BUGFIX 0
#define JEMALLOC_VERSION_NREV 97
#define JEMALLOC_VERSION_GID "cd2931ad9bbd78208565716ab102e86d858c2fff"
#define JEMALLOC_VERSION_GID_IDENT cd2931ad9bbd78208565716ab102e86d858c2fff
#define JEMALLOC_VERSION_MINOR 2
#define JEMALLOC_VERSION_BUGFIX 1
#define JEMALLOC_VERSION_NREV 0
#define JEMALLOC_VERSION_GID "ea6b3e973b477b8061e0076bb257dbd7f3faa756"
#define JEMALLOC_VERSION_GID_IDENT ea6b3e973b477b8061e0076bb257dbd7f3faa756

#define MALLOCX_LG_ALIGN(la) ((int)(la))
#if LG_SIZEOF_PTR == 2
Expand Down Expand Up @@ -69,6 +69,7 @@
# define JEMALLOC_EXPORT __declspec(dllimport)
# endif
# endif
# define JEMALLOC_FORMAT_ARG(i)
# define JEMALLOC_FORMAT_PRINTF(s, i)
# define JEMALLOC_NOINLINE __declspec(noinline)
# ifdef __cplusplus
Expand Down Expand Up @@ -96,6 +97,11 @@
# ifndef JEMALLOC_EXPORT
# define JEMALLOC_EXPORT JEMALLOC_ATTR(visibility("default"))
# endif
# ifdef JEMALLOC_HAVE_ATTR_FORMAT_ARG
# define JEMALLOC_FORMAT_ARG(i) JEMALLOC_ATTR(__format_arg__(3))
# else
# define JEMALLOC_FORMAT_ARG(i)
# endif
# ifdef JEMALLOC_HAVE_ATTR_FORMAT_GNU_PRINTF
# define JEMALLOC_FORMAT_PRINTF(s, i) JEMALLOC_ATTR(format(gnu_printf, s, i))
# elif defined(JEMALLOC_HAVE_ATTR_FORMAT_PRINTF)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -370,4 +370,10 @@
*/
#define JEMALLOC_STRERROR_R_RETURNS_CHAR_WITH_GNU_SOURCE

/*
* popcount*() functions to use for bitmapping.
*/
#define JEMALLOC_INTERNAL_POPCOUNTL __builtin_popcountl
#define JEMALLOC_INTERNAL_POPCOUNT __builtin_popcount

#endif /* JEMALLOC_INTERNAL_DEFS_H_ */
Original file line number Diff line number Diff line change
Expand Up @@ -191,4 +191,26 @@ static const bool have_background_thread =
#endif
;

#define JEMALLOC_GCC_U8_ATOMIC_ATOMICS 1
#define JEMALLOC_GCC_U8_SYNC_ATOMICS 1

/*
* Are extra safety checks enabled; things like checking the size of sized
* deallocations, double-frees, etc.
*/
static const bool config_opt_safety_checks =
#ifdef JEMALLOC_OPT_SAFETY_CHECKS
true
#elif defined(JEMALLOC_DEBUG)
/*
* This lets us only guard safety checks by one flag instead of two; fast
* checks can guard solely by config_opt_safety_checks and run in debug mode
* too.
*/
true
#else
false
#endif
;

#endif /* JEMALLOC_PREAMBLE_H */
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@
#include <limits.h>
#include <strings.h>

#define JEMALLOC_VERSION "5.1.0-56-g41b7372eadee941b9164751b8d4963f915d3ceae"
#define JEMALLOC_VERSION "5.2.1-0-gea6b3e973b477b8061e0076bb257dbd7f3faa756"
#define JEMALLOC_VERSION_MAJOR 5
#define JEMALLOC_VERSION_MINOR 1
#define JEMALLOC_VERSION_BUGFIX 0
#define JEMALLOC_VERSION_NREV 56
#define JEMALLOC_VERSION_GID "41b7372eadee941b9164751b8d4963f915d3ceae"
#define JEMALLOC_VERSION_MINOR 2
#define JEMALLOC_VERSION_BUGFIX 1
#define JEMALLOC_VERSION_NREV 0
#define JEMALLOC_VERSION_GID "ea6b3e973b477b8061e0076bb257dbd7f3faa756"
#define JEMALLOC_VERSION_GID_IDENT ea6b3e973b477b8061e0076bb257dbd7f3faa756

#define MALLOCX_LG_ALIGN(la) ((int)(la))
#if LG_SIZEOF_PTR == 2
Expand Down Expand Up @@ -68,6 +69,7 @@
# define JEMALLOC_EXPORT __declspec(dllimport)
# endif
# endif
# define JEMALLOC_FORMAT_ARG(i)
# define JEMALLOC_FORMAT_PRINTF(s, i)
# define JEMALLOC_NOINLINE __declspec(noinline)
# ifdef __cplusplus
Expand Down Expand Up @@ -95,6 +97,11 @@
# ifndef JEMALLOC_EXPORT
# define JEMALLOC_EXPORT JEMALLOC_ATTR(visibility("default"))
# endif
# ifdef JEMALLOC_HAVE_ATTR_FORMAT_ARG
# define JEMALLOC_FORMAT_ARG(i) JEMALLOC_ATTR(__format_arg__(3))
# else
# define JEMALLOC_FORMAT_ARG(i)
# endif
# ifdef JEMALLOC_HAVE_ATTR_FORMAT_GNU_PRINTF
# define JEMALLOC_FORMAT_PRINTF(s, i) JEMALLOC_ATTR(format(gnu_printf, s, i))
# elif defined(JEMALLOC_HAVE_ATTR_FORMAT_PRINTF)
Expand Down