• David Goodell's avatar
    [svn-r4567] Fix multithreading bug with --enable-g=mem,mutexnesting. · 73b0d565
    David Goodell authored
    The tracing memory allocation routines manipulate global state in order
    to keep track of allocated memory without acquiring a critical section.
    Unfortunately these routines are sometimes used outside of even the
    global critical section (to bootstrap TLS storage for mutexnesting
    checks).  This commit adds a new type of critical section (MEMALLOC)
    that does not perform any nest checking in order to solve the
    bootstrapping problem.
    Reviewed by buntinas@.