server-skynet-source-3rd-je.../test/unit
Jason Evans e2bcf037d4 Make dss operations lockless.
Rather than protecting dss operations with a mutex, use atomic
operations.  This has negligible impact on synchronization overhead
during typical dss allocation, but is a substantial improvement for
chunk_in_dss() and the newly added chunk_dss_mergeable(), which can be
called multiple times during chunk deallocations.

This change also has the advantage of avoiding tsd in deallocation paths
associated with purging, which resolves potential deadlocks during
thread exit due to attempted tsd resurrection.

This resolves #425.
2016-10-13 15:33:56 -07:00
..
a0.c Fix tsd bootstrapping for a0malloc(). 2016-05-07 16:55:36 -07:00
arena_reset.c Resolve bootstrapping issues when embedded in FreeBSD libc. 2016-05-10 22:51:33 -07:00
atomic.c Fix MinGW-related portability issues. 2015-07-23 13:56:25 -07:00
bitmap.c Refactor out signed/unsigned comparisons. 2016-03-15 09:40:02 -07:00
ckh.c Resolve bootstrapping issues when embedded in FreeBSD libc. 2016-05-10 22:51:33 -07:00
decay.c Fix decay tests to all adapt to nstime_monotonic(). 2016-10-11 15:49:55 -07:00
fork.c Don't test fork() on Windows. 2016-05-03 17:18:34 -07:00
hash.c Fix stack corruption and uninitialized var warning 2016-02-29 15:22:53 -08:00
junk_alloc.c Fix style nits. 2016-04-17 13:44:59 -07:00
junk_free.c Fix style nits. 2016-04-17 13:44:59 -07:00
junk.c Make dss operations lockless. 2016-10-13 15:33:56 -07:00
lg_chunk.c Fix indentation. 2015-07-09 16:32:49 -07:00
mallctl.c Fix stats.arenas.<i>.[...] for --disable-stats case. 2016-02-27 20:40:13 -08:00
math.c Work around a weird pgi bug in test/unit/math.c 2016-09-26 11:08:45 -07:00
mq.c Don't fetch tsd in a0{d,}alloc(). 2014-10-10 18:19:20 -07:00
mtx.c Add mq (message queue) to test infrastructure. 2013-12-12 14:41:02 -08:00
nstime.c Do not advance decay epoch when time goes backwards. 2016-10-10 22:31:37 -07:00
ph.c Refactor/fix ph. 2016-04-11 02:15:42 -07:00
prng.c Refactor prng* from cpp macros into inline functions. 2016-02-19 20:29:06 -08:00
prof_accum.c Refactor permuted backtrace test allocation. 2014-10-01 22:28:23 -07:00
prof_active.c Avoid atexit(3) when possible, disable prof_final by default. 2014-10-08 18:08:00 -07:00
prof_gdump.c Implement the prof.gdump mallctl. 2015-01-25 21:21:35 -08:00
prof_idump.c Add heap profiling tests. 2014-01-17 15:40:52 -08:00
prof_reset.c Resolve bootstrapping issues when embedded in FreeBSD libc. 2016-05-10 22:51:33 -07:00
prof_thread_name.c Avoid atexit(3) when possible, disable prof_final by default. 2014-10-08 18:08:00 -07:00
ql.c Add unit tests for qr, ql, and rb. 2014-01-03 16:35:03 -08:00
qr.c Add unit tests for qr, ql, and rb. 2014-01-03 16:35:03 -08:00
quarantine.c Fix message formatting errors uncovered by p_test_fail() refactoring. 2014-03-30 11:21:09 -07:00
rb.c Remove rbt_nil 2016-02-23 18:09:25 -08:00
rtree.c Add no-OOM assertions to test. 2015-08-07 00:51:11 -07:00
run_quantize.c Refactor runs_avail. 2016-10-04 19:48:50 -07:00
SFMT.c Fix MinGW-related portability issues. 2015-07-23 13:56:25 -07:00
size_classes.c Implement pz2ind(), pind2sz(), and psz2u(). 2016-10-04 16:29:19 -07:00
smoothstep.c Implement smoothstep table generation. 2016-02-19 20:56:15 -08:00
stats.c Fix more 64-to-32 conversion warnings. 2016-04-12 12:39:02 -07:00
ticker.c Implement ticker. 2016-02-19 20:29:06 -08:00
tsd.c Fix tsd bootstrapping for a0malloc(). 2016-05-07 16:55:36 -07:00
util.c Fix style nits. 2016-04-17 13:44:59 -07:00
witness.c Resolve bootstrapping issues when embedded in FreeBSD libc. 2016-05-10 22:51:33 -07:00
zero.c Clean up char vs. uint8_t in junk filling code. 2016-04-11 02:26:35 -07:00