TSAN patches
@walters
Submitted by Colin Walters Link to original bug (#774645)
Description
I'm trying to use -fsanitize=thread
for OSTree, and some of
these issues seem to go into GLib. Also, the sanitizers work better if
the userspace libraries are built with them too.
This fix is similar to https://github.com/ostreedev/ostree/pull/582/commits/b6814bb37cacd7a36715cf91766eb760b1b33c66
Mixing atomic and non-atomic reads trips TSAN, so let's change the assertions to operate on the local values returned from atomic read/writes.
Without this change I couldn't even build GLib with TSAN, since we use gresources during compilation, which uses GSubprocess, which hits this code.