From: Ivan Maidanski Date: Tue, 21 Nov 2017 08:45:30 +0000 (+0300) Subject: Eliminate TSan warning about data race in make_descriptor X-Git-Tag: v8.0.0~502 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a3ee14468b807ecf2d6fa279699b7a9879443bdf;p=gc Eliminate TSan warning about data race in make_descriptor * typd_mlc.c [THREADS) && AO_HAVE_load_acquire && AO_HAVE_store] (GC_make_descriptor): Use AO_store for setting GC_explicit_typing_initialized (to true). --- diff --git a/typd_mlc.c b/typd_mlc.c index f62bc5d3..da2ca274 100644 --- a/typd_mlc.c +++ b/typd_mlc.c @@ -542,7 +542,12 @@ GC_API GC_descr GC_CALL GC_make_descriptor(const GC_word * bm, size_t len) # endif { GC_init_explicit_typing(); - GC_explicit_typing_initialized = TRUE; +# if defined(THREADS) && defined(AO_HAVE_load_acquire) \ + && defined(AO_HAVE_store) + AO_store(&GC_explicit_typing_initialized, (AO_t)TRUE); +# else + GC_explicit_typing_initialized = TRUE; +# endif } UNLOCK(); }