TSD: Add fork support to tsd_nominal_tsds.

In case of multithreaded fork, we want to leave the child in a reasonable state,
in which tsd_nominal_tsds is either empty or contains only the forking thread.
This commit is contained in:
David Goldblatt
2018-07-26 14:42:37 -07:00
committed by David Goldblatt
parent 013ab26c86
commit 41b7372ead
3 changed files with 28 additions and 0 deletions

View File

@@ -105,6 +105,9 @@ void tsd_cleanup(void *arg);
tsd_t *tsd_fetch_slow(tsd_t *tsd, bool internal);
void tsd_state_set(tsd_t *tsd, uint8_t new_state);
void tsd_slow_update(tsd_t *tsd);
void tsd_prefork(tsd_t *tsd);
void tsd_postfork_parent(tsd_t *tsd);
void tsd_postfork_child(tsd_t *tsd);
/*
* Call ..._inc when your module wants to take all threads down the slow paths,