server-skynet-source-3rd-je.../test/unit
Yinan Zhang b55419f9b9 Restructure profiling
Develop new data structure and code logic for holding profiling
related information stored in the extent that may be needed after the
extent is released, which in particular is the case for the
reallocation code path (e.g. in `rallocx()` and `xallocx()`).  The
data structure is a generalization of `prof_tctx_t`: we previously
only copy out the `prof_tctx` before the extent is released, but we
may be in need of additional fields. Currently the only additional
field is the allocation time field, but there may be more fields in
the future.

The restructuring also resolved a bug: `prof_realloc()` mistakenly
passed the new `ptr` to `prof_free_sampled_object()`, but passing in
the `old_ptr` would crash because it's already been released.  Now
the essential profiling information is collectively copied out early
and safely passed to `prof_free_sampled_object()` after the extent is
released.
2019-11-22 16:31:56 -08:00
..
a0.c Remove extraneous parens around return arguments. 2017-01-20 21:43:07 -08:00
arena_reset_prof.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
arena_reset_prof.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
arena_reset.c Implement retain on Windows. 2019-07-23 22:18:55 -07:00
atomic.c Remove the pre-C11-atomics API, which is now unused 2017-04-05 16:25:37 -07:00
background_thread_enable.c Fix the max_background_thread test. 2018-05-15 14:00:51 -07:00
background_thread.c Combine background_thread started / paused into state. 2017-06-12 08:56:14 -07:00
base.c Add stats for metadata_thp. 2017-08-30 16:47:32 -07:00
binshard.c Fix the binshard unit test. 2019-04-02 16:53:00 -07:00
binshard.sh Add unit test for sharded bins. 2018-12-03 17:17:03 -08:00
bit_util.c Add lg_ceil to bit_util. 2018-07-12 20:53:06 -07:00
bitmap.c Limit # of iters of test_bitmap_xfu. 2019-10-09 11:15:37 -07:00
buf_writer.c Add buffered writer 2019-08-09 09:44:29 -07:00
cache_bin.c Track low_water == -1 case explicitly. 2019-08-21 16:00:38 -07:00
ckh.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
decay.c Eagerly purge oversized merged extents. 2019-03-14 17:34:55 -07:00
decay.sh Refactor *decay_time into *decay_ms. 2017-05-18 11:33:45 -07:00
div.c Add the div module, which allows fast division by dynamic values. 2017-12-21 14:25:43 -08:00
emitter.c Add compact json option for emitter 2019-08-09 09:53:41 -07:00
extent_quantize.c Move page quantization to sz module. 2019-09-23 23:06:27 -07:00
extent_util.c Guard slabcur fetching in extent_util 2019-10-28 17:27:51 -07:00
fork.c Add a test of behavior under multi-threaded forking. 2017-07-10 18:17:12 -07:00
hash.c Header refactoring: hash - unify and remove from catchall. 2017-04-25 09:51:38 -07:00
hook.c Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
huge.c Rename huge_threshold to oversize_threshold. 2019-01-25 13:15:45 -08:00
junk_alloc.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_alloc.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_free.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_free.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk.c SC: Remove global data. 2018-07-23 13:37:08 -07:00
junk.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
log.c Workaround the stringop-overflow check false positives. 2019-09-09 11:35:04 -07:00
mallctl.c Remove mallctl test for zero_realloc 2019-11-05 10:09:18 -08:00
malloc_io.c Disentangle assert and util 2017-03-06 15:08:43 -08:00
math.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
mq.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
mtx.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
nstime.c Add background thread related stats. 2017-05-23 12:26:20 -07:00
pack.c Skip test/unit/pack when profiling is enabled. 2017-12-18 12:47:46 -08:00
pack.sh Refactor *decay_time into *decay_ms. 2017-05-18 11:33:45 -07:00
pages.c Add opt.thp which allows explicit hugepage usage. 2018-03-08 13:08:06 -08:00
ph.c Header refactoring: break out ph.h dependencies 2017-04-11 11:52:30 -07:00
prng.c Convert prng module to use C11-style atomics 2017-04-04 16:45:52 -07:00
prof_accum.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_accum.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_active.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_active.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_gdump.c SC: Remove global data. 2018-07-23 13:37:08 -07:00
prof_gdump.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_idump.c Add "prof.dump_prefix" to override filename prefixes for dumps. 2019-09-12 22:26:03 -07:00
prof_idump.sh Remove --disable-tcache. 2017-04-21 10:06:12 -07:00
prof_log.c Buffer prof_log_stop 2019-08-12 09:06:01 -07:00
prof_log.sh Add unit tests for logging 2018-08-01 13:27:11 -07:00
prof_reset.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_reset.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_tctx.c Restructure profiling 2019-11-22 16:31:56 -08:00
prof_tctx.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_thread_name.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_thread_name.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
ql.c Header refactoring: break out ql.h dependencies 2017-04-11 11:52:30 -07:00
qr.c Header refactoring: break out qr.h dependencies 2017-04-11 11:52:30 -07:00
rb.c Header refactoring: break out rb.h dependencies 2017-04-11 11:52:30 -07:00
retained.c Lower nthreads in test/unit/retained on 32-bit to avoid OOM. 2019-07-25 13:10:03 -07:00
rtree.c Extents: Break extent-struct/arena interactions 2019-09-23 23:06:27 -07:00
safety_check.c Safety checks: Add a redzoning feature. 2019-04-15 16:48:12 -07:00
safety_check.sh Safety checks: Add a redzoning feature. 2019-04-15 16:48:12 -07:00
sc.c SC: Add page customization functionality. 2018-07-12 20:53:06 -07:00
seq.c Add the Seq module, a simple seqlock implementation. 2018-05-18 11:43:03 -07:00
SFMT.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
size_classes.c SC: Remove global data. 2018-07-23 13:37:08 -07:00
slab.c Extents: Break extent-struct/arena interactions 2019-09-23 23:06:27 -07:00
smoothstep.c Cleanup smoothstep.sh / .h. 2017-05-25 16:52:10 -07:00
spin.c Header refactoring: unify and de-catchall rtree module. 2017-05-31 13:08:45 -07:00
stats_print.c Fix type warning on Windows. 2018-04-09 16:50:30 -07:00
stats.c Add nonfull_slabs to bin_stats_t. 2019-04-29 13:35:02 -07:00
test_hooks.c Rename hooks module to test_hooks. 2018-05-18 11:43:03 -07:00
thread_event.c Pull tcache GC events into thread event handler 2019-11-04 16:07:56 -08:00
thread_event.sh Build a general purpose thread event handler 2019-11-04 11:15:50 -08:00
ticker.c Header refactoring: ticker module - remove from the catchall and unify. 2017-04-24 10:33:21 -07:00
tsd.c TSD: Add the ability to enter a global slow path. 2018-05-18 11:43:03 -07:00
witness.c Header refactoring: unify and de-catchall witness code. 2017-05-24 15:27:30 -07:00
zero_realloc_abort.c Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_realloc_abort.sh Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_realloc_free.c Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_realloc_free.sh Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_realloc_strict.c Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_realloc_strict.sh Realloc: Make behavior of realloc(ptr, 0) configurable. 2019-10-29 17:48:44 -07:00
zero_reallocs.c Add stats counters for number of zero reallocs 2019-10-29 17:48:44 -07:00
zero_reallocs.sh Add stats counters for number of zero reallocs 2019-10-29 17:48:44 -07:00
zero.c SC: Remove global data. 2018-07-23 13:37:08 -07:00
zero.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00