server-skynet-source-3rd-je.../include/jemalloc/internal
Alex Lapenkov eb65d1b078 Fix FreeBSD system jemalloc TSD cleanup
Before this commit, in case FreeBSD libc jemalloc was overridden by another
jemalloc, proper thread shutdown callback was involved only for the overriding
jemalloc. A call to _malloc_thread_cleanup from libthr would be redirected to
user jemalloc, leaving data about dead threads hanging in system jemalloc. This
change tackles the issue in two ways. First, for current and old system
jemallocs, which we can not modify, the overriding jemalloc would locate and
invoke system cleanup routine. For upcoming jemalloc integrations, the cleanup
registering function will also be redirected to user jemalloc, which means that
system jemalloc's cleanup routine will be registered in user's jemalloc and a
single call to _malloc_thread_cleanup will be sufficient to invoke both
callbacks.
2022-03-02 10:10:27 -08:00
..
activity_callback.h Add experimental.thread.activity_callback. 2020-11-05 12:33:25 -08:00
arena_externs.h add experimental.arenas_create_ext mallctl 2021-09-24 13:43:18 -07:00
arena_inlines_a.h Cache an arena's index in the arena. 2021-02-04 14:10:43 -08:00
arena_inlines_b.h Implement guard pages. 2021-09-26 16:30:15 -07:00
arena_stats.h Add stats for stashed bytes in tcache. 2021-12-29 14:44:43 -08:00
arena_structs.h Small refactors around 7bb05e0. 2021-09-27 16:05:13 -07:00
arena_types.h Small refactors around 7bb05e0. 2021-09-27 16:05:13 -07:00
assert.h Disentangle assert and util 2017-03-06 15:08:43 -08:00
atomic_c11.h Introduce a backport of C11 atomics 2017-03-03 13:40:59 -08:00
atomic_gcc_atomic.h Workaround to address g++ unused variable warnings 2019-07-30 11:37:56 -07:00
atomic_gcc_sync.h Restrict lwsync to powerpc64 only 2018-10-24 11:18:55 -07:00
atomic_msvc.h Introduce a backport of C11 atomics 2017-03-03 13:40:59 -08:00
atomic.h atomic: add atomic_load_sub_store 2020-07-09 13:41:04 -07:00
background_thread_externs.h Remove opt_background_thread_hpa_interval_max_ms 2021-09-17 16:56:41 -07:00
background_thread_inlines.h Allow PAI to calculate time until deferred work 2021-09-17 16:56:41 -07:00
background_thread_structs.h Wake up background threads on demand 2021-09-17 16:56:41 -07:00
base.h Fix base_ehooks_get_for_metadata 2021-12-20 15:37:53 -08:00
bin_info.h Extents: Split out extent struct. 2019-09-23 23:06:27 -07:00
bin_stats.h Reduce footprint of bin_t. 2019-11-21 11:08:36 -08:00
bin_types.h Rename extent_t to edata_t. 2019-12-20 10:18:40 -08:00
bin.h Bin: Move stats closer to the mutex. 2021-02-04 14:10:43 -08:00
bit_util.h bit_util: Guarantee popcount's presence. 2020-12-07 06:21:08 -08:00
bitmap.h bit_util: Change ffs functions indexing. 2020-07-30 15:25:23 -07:00
buf_writer.h Unify write callback signature 2020-05-11 14:51:24 -07:00
cache_bin.h Fix failed assertion due to racy memory access 2022-02-17 09:35:52 -08:00
ckh.h Header refactoring: tsd - cleanup and dependency breaking. 2017-05-01 10:49:56 -07:00
counter.h Migrate counter to use locked int 2020-05-12 08:23:15 -07:00
ctl.h Optimize stats print using partial name-to-mib 2020-12-18 10:39:58 -08:00
decay.h Allow PAI to calculate time until deferred work 2021-09-17 16:56:41 -07:00
div.h Add the div module, which allows fast division by dynamic values. 2017-12-21 14:25:43 -08:00
ecache.h San: Rename 'guard' to 'san' 2021-12-15 10:39:17 -08:00
edata_cache.h edata_cache: Allow unbounded fast caching. 2021-07-26 15:14:37 -07:00
edata.h Implement guard pages. 2021-09-26 16:30:15 -07:00
ehooks.h Implement guard pages. 2021-09-26 16:30:15 -07:00
emap.h San: Bump alloc frequently reused guarded allocations 2021-12-15 10:39:17 -08:00
emitter.h Unify write callback signature 2020-05-11 14:51:24 -07:00
eset.h Eset: Cache summary information for heap edatas. 2021-08-02 15:02:49 -07:00
exp_grow.h Rename geom_grow -> exp_grow. 2020-11-13 13:42:33 -08:00
extent_dss.h Header refactoring: unify and de-catchall extent_dss. 2017-05-31 13:08:45 -07:00
extent_mmap.h Header refactoring: unify and de-catchall extent_mmap module. 2017-05-31 13:08:45 -07:00
extent.h San: Create a function for committing and zeroing 2021-12-15 10:39:17 -08:00
fb.h Clean up some minor data structure inconsistencies 2021-05-12 11:14:23 -07:00
fxp.h fxp: Add FXP_INIT_PERCENT 2021-02-04 20:58:31 -08:00
hash.h Fix Undefined Behavior in hash.h 2020-02-13 12:25:26 -08:00
hook.h Hooks: Protect against reentrancy. 2018-05-18 11:43:03 -07:00
hpa_hooks.h Fix the time-since computation in HPA. 2021-12-21 23:37:22 -08:00
hpa_opts.h HPA: Add min_purge_interval_ms option 2021-09-17 16:56:41 -07:00
hpa.h Wake up background threads on demand 2021-09-17 16:56:41 -07:00
hpdata.h HPA: Correctly calculate retained pages 2021-08-20 18:06:17 -07:00
inspect.h Extents: Split out introspection functionality. 2019-12-20 10:18:40 -08:00
jemalloc_internal_decls.h freebsd 14 build fix proposal. 2021-12-06 13:15:21 -08:00
jemalloc_internal_defs.h.in Implement use-after-free detection using junk and stash. 2021-12-29 14:44:43 -08:00
jemalloc_internal_externs.h Simplify arena_migrate() to take arena_t* instead of indices. 2022-01-11 16:59:22 -08:00
jemalloc_internal_includes.h Consolidate prof inline function headers 2020-05-11 12:24:56 -07:00
jemalloc_internal_inlines_a.h Small refactors around 7bb05e0. 2021-09-27 16:05:13 -07:00
jemalloc_internal_inlines_b.h Simplify arena_migrate() to take arena_t* instead of indices. 2022-01-11 16:59:22 -08:00
jemalloc_internal_inlines_c.h Inline malloc fastpath into operator new. 2021-02-08 14:17:47 -08:00
jemalloc_internal_macros.h Use __forceinline for JEMALLOC_ALWAYS_INLINE on msvc 2019-11-12 13:50:25 -08:00
jemalloc_internal_types.h Inline malloc fastpath into operator new. 2021-02-08 14:17:47 -08:00
jemalloc_preamble.h.in Implement use-after-free detection using junk and stash. 2021-12-29 14:44:43 -08:00
large_externs.h Record request size in prof info 2021-01-07 20:39:49 -08:00
lockedint.h Migrate counter to use locked int 2020-05-12 08:23:15 -07:00
log.h Logging: capitalize log macro. 2017-10-02 20:44:43 -07:00
malloc_io.h Unify write callback signature 2020-05-11 14:51:24 -07:00
mpsc_queue.h mpsc_queue: Add module. 2021-06-24 14:55:49 -07:00
mutex_prof.h Add prof stats mutex stats 2021-01-07 20:39:49 -08:00
mutex.h Mutex: Make spin count configurable. 2021-08-05 10:13:53 -07:00
nstime.h Fix shadowed variable usage. 2021-12-23 10:55:08 -08:00
pa.h Implement guard pages. 2021-09-26 16:30:15 -07:00
pac.h San: Bump alloc frequently reused guarded allocations 2021-12-15 10:39:17 -08:00
pages.h Implement guard pages. 2021-09-26 16:30:15 -07:00
pai.h Pass 'frequent_reuse' hint to PAI 2021-12-15 10:39:17 -08:00
peak_event.h Add thread.peak.[read|reset] mallctls. 2020-06-11 13:54:22 -07:00
peak.h Add peak_t, for tracking allocator net max. 2020-06-11 13:54:22 -07:00
ph.h PH: Insert-below-min fast-path. 2021-08-02 15:02:49 -07:00
private_namespace.sh Automatically generate private symbol name mangling macros. 2017-05-11 23:06:54 -07:00
private_symbols.sh Automatically generate private symbol name mangling macros. 2017-05-11 23:06:54 -07:00
prng.h PRNG: Remove atomic functionality. 2020-10-05 19:55:57 -07:00
prof_data.h Do not create size class tables for non-prof builds 2020-08-24 20:10:02 -07:00
prof_externs.h Add prof_leak_error option 2022-01-21 16:24:20 -08:00
prof_hook.h Allow setting a dump hook 2021-09-22 15:04:01 -07:00
prof_inlines.h Fix shadowed variable usage. 2021-12-23 10:55:08 -08:00
prof_log.h Relocate a few prof utilities to the right modules 2020-06-29 14:27:50 -07:00
prof_recent.h Correct usize in prof last-N record 2020-09-09 13:31:35 -07:00
prof_stats.h Track per size class internal fragmentation 2021-01-07 20:39:49 -08:00
prof_structs.h Allow setting custom backtrace hook 2021-09-22 15:04:01 -07:00
prof_sys.h Allow setting custom backtrace hook 2021-09-22 15:04:01 -07:00
prof_types.h Do not create size class tables for non-prof builds 2020-08-24 20:10:02 -07:00
psset.h psset: Purge empty slabs first. 2021-07-12 17:59:18 -07:00
public_namespace.sh Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
public_unnamespace.sh Fix name mangling for stress tests. 2014-01-16 17:38:01 -08:00
ql.h QL, QR: Add documentation. 2020-04-11 10:32:11 -07:00
qr.h QL, QR: Add documentation. 2020-04-11 10:32:11 -07:00
quantum.h Add new architecture loongarch. 2021-10-18 10:57:34 -07:00
rb.h Red-black tree: add summarize/filter. 2021-05-12 11:14:23 -07:00
rtree_tsd.h Optimize away the tsd_fast() check on free fastpath. 2021-10-28 10:05:59 -07:00
rtree.h Optimize away a branch on the free fastpath. 2021-10-28 16:55:54 -07:00
safety_check.h Report the correct and wrong sizes on sized dealloc bug detection. 2021-02-08 14:42:27 -08:00
san_bump.h San: Bump alloc frequently reused guarded allocations 2021-12-15 10:39:17 -08:00
san.h Fix unnecessary returns in san_(un)guard_pages_two_sided. 2022-01-04 13:55:06 -08:00
sc.h Mark slab as true on sized dealloc fast path. 2021-12-06 14:28:34 -08:00
sec_opts.h SEC: Expand option configurability. 2021-02-19 15:10:54 -08:00
sec.h SEC: Allow arbitrarily many shards, cached sizes. 2021-05-22 08:17:41 -07:00
seq.h Add the Seq module, a simple seqlock implementation. 2018-05-18 11:43:03 -07:00
slab_data.h Rearrange slab data and constants 2019-09-23 23:06:27 -07:00
smoothstep.h Cleanup smoothstep.sh / .h. 2017-05-25 16:52:10 -07:00
smoothstep.sh Cleanup smoothstep.sh / .h. 2017-05-25 16:52:10 -07:00
spin.h Power: disable the CPU_SPINWAIT macro. 2017-10-04 18:37:23 -07:00
stats.h HPA: Add stats for the hpa_shard. 2020-10-23 11:14:34 -07:00
sz.h Implement opt.cache_oblivious. 2021-02-11 11:32:01 -08:00
tcache_externs.h Implement use-after-free detection using junk and stash. 2021-12-29 14:44:43 -08:00
tcache_inlines.h Implement use-after-free detection using junk and stash. 2021-12-29 14:44:43 -08:00
tcache_structs.h Add a hard limit on tcache max size class. 2020-10-16 13:49:51 -07:00
tcache_types.h Add a hard limit on tcache max size class. 2020-10-16 13:49:51 -07:00
test_hooks.h Redefine functions with test hooks only for tests 2021-10-15 15:25:36 -07:00
thread_event.h Optimize away the tsd_fast() check on free fastpath. 2021-10-28 10:05:59 -07:00
ticker.h Add ticker_geom_t. 2021-02-04 14:10:43 -08:00
tsd_generic.h Fix recursive malloc during bootstrap on QNX 2020-12-18 10:05:59 -08:00
tsd_malloc_thread_cleanup.h Fix FreeBSD system jemalloc TSD cleanup 2022-03-02 10:10:27 -08:00
tsd_tls.h Enforce TLS_MODEL attribute. 2019-04-16 11:07:15 -07:00
tsd_types.h Fix FreeBSD system jemalloc TSD cleanup 2022-03-02 10:10:27 -08:00
tsd_win.h Fix FreeBSD system jemalloc TSD cleanup 2022-03-02 10:10:27 -08:00
tsd.h Fix FreeBSD system jemalloc TSD cleanup 2022-03-02 10:10:27 -08:00
typed_list.h Add empty test and concat for typed list 2020-07-31 09:16:50 -07:00
util.h Tcache flush: prefetch edata contents. 2021-02-04 14:10:43 -08:00
witness.h San: Implement bump alloc 2021-12-15 10:39:17 -08:00