server-skynet-source-3rd-je.../include/jemalloc/internal
Jason Evans 6ef80d68f0 Fix profile dumping race.
Fix a race that caused a non-critical assertion failure.  To trigger the
race, a thread had to be part way through initializing a new sample,
such that it was discoverable by the dumping thread, but not yet linked
into its gctx by the time a later dump phase would normally have reset
its state to 'nominal'.

Additionally, lock access to the state field during modification to
transition to the dumping state.  It's not apparent that this oversight
could have caused an actual problem due to outer locking that protects
the dumping machinery, but the added locking pedantically follows the
stated locking protocol for the state field.
2014-09-24 22:23:43 -07:00
..
arena.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
atomic.h Add atomic operations tests and fix latent bugs. 2014-08-06 23:36:19 -07:00
base.h Refactor huge allocation to be managed by arenas. 2014-05-15 22:36:41 -07:00
bitmap.h Try to use __builtin_ffsl if ffsl is unavailable. 2014-06-02 07:44:50 -07:00
chunk_dss.h Refactor tests. 2013-12-08 20:52:21 -08:00
chunk_mmap.h Refactor huge allocation to be managed by arenas. 2014-05-15 22:36:41 -07:00
chunk.h Refactor chunk map. 2014-09-04 22:22:52 -07:00
ckh.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
ctl.h Refactor huge allocation to be managed by arenas. 2014-05-15 22:36:41 -07:00
extent.h Implement per thread heap profiling. 2014-08-19 21:31:16 -07:00
hash.h Use KQU() rather than QU() where applicable. 2014-05-28 21:17:42 -07:00
huge.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
jemalloc_internal_decls.h Try to use __builtin_ffsl if ffsl is unavailable. 2014-06-02 07:44:50 -07:00
jemalloc_internal_defs.h.in Test for availability of malloc hooks via autoconf 2014-08-22 15:19:21 -07:00
jemalloc_internal_macros.h Use KQU() rather than QU() where applicable. 2014-05-28 21:17:42 -07:00
jemalloc_internal.h.in Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
mb.h Simplify small size class infrastructure. 2012-02-28 16:50:47 -08:00
mutex.h Add support for Mingw 2012-04-21 21:27:46 -07:00
private_namespace.sh Refactor to support more varied testing. 2013-12-03 22:06:59 -08:00
private_symbols.txt Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
private_unnamespace.sh Refactor to support more varied testing. 2013-12-03 22:06:59 -08:00
prng.h Whitespace cleanups. 2014-09-04 22:27:26 -07:00
prof.h Fix profile dumping race. 2014-09-24 22:23:43 -07:00
public_namespace.sh Fix name mangling for stress tests. 2014-01-16 17:38:01 -08:00
public_unnamespace.sh Fix name mangling for stress tests. 2014-01-16 17:38:01 -08:00
ql.h Normalize #define whitespace. 2013-12-08 22:28:27 -08:00
qr.h Normalize #define whitespace. 2013-12-08 22:28:27 -08:00
quarantine.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
rb.h Add rb_empty(). 2014-08-19 21:05:54 -07:00
rtree.h Convert rtree from (void *) to (uint8_t) storage. 2014-01-02 17:36:38 -08:00
size_classes.sh Optimize [nmd]alloc() fast paths. 2014-09-07 14:40:19 -07:00
stats.h Refactor huge allocation to be managed by arenas. 2014-05-15 22:36:41 -07:00
tcache.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
tsd.h Convert all tsd variables to reside in a single tsd structure. 2014-09-23 02:36:08 -07:00
util.h mark some conditions as unlikely 2014-09-10 21:49:42 -04:00
valgrind.h mark some conditions as unlikely 2014-09-10 21:49:42 -04:00