Jason Evans c1e00ef2a6 Resolve bootstrapping issues when embedded in FreeBSD libc.
b2c0d6322d2307458ae2b28545f8a5c9903d7ef5 (Add witness, a simple online
locking validator.) caused a broad propagation of tsd throughout the
internal API, but tsd_fetch() was designed to fail prior to tsd
bootstrapping.  Fix this by splitting tsd_t into non-nullable tsd_t and
nullable tsdn_t, and modifying all internal APIs that do not critically
rely on tsd to take nullable pointers.  Furthermore, add the
tsd_booted_get() function so that tsdn_fetch() can probe whether tsd
bootstrapping is complete and return NULL if not.  All dangerous
conversions of nullable pointers are tsdn_tsd() calls that assert-fail
on invalid conversion.
2016-05-10 22:51:33 -07:00
..
2016-05-07 16:55:36 -07:00
2015-07-23 13:56:25 -07:00
2016-05-03 17:18:34 -07:00
2016-04-17 13:44:59 -07:00
2016-04-17 13:44:59 -07:00
2015-07-09 16:32:49 -07:00
2014-05-28 09:41:28 -07:00
2014-10-10 18:19:20 -07:00
2016-02-21 21:39:05 -08:00
2016-04-11 02:15:42 -07:00
2015-01-25 21:21:35 -08:00
2014-01-17 15:40:52 -08:00
2014-01-03 16:35:03 -08:00
2014-01-03 16:35:03 -08:00
2016-02-23 18:09:25 -08:00
2015-08-07 00:51:11 -07:00
2015-07-23 13:56:25 -07:00
2016-04-12 12:39:02 -07:00
2016-02-19 20:29:06 -08:00
2016-05-07 16:55:36 -07:00
2016-04-17 13:44:59 -07:00