• Mathieu Chartier's avatar
    Add exclusion between instrumentation and GC · aa516829
    Mathieu Chartier authored
    Instrumentation calls VisitClasses while exclusive holding the
    mutator lock. This can cause deadlocks since VisitClasses needs to
    decode JNI weak globals. If the system weak slow path flag is set,
    then we wait holding locks while exclusive holding the mutator lock.
    This causes a deadlock since the GC cannot acquire the mutator lock
    to sweep system weaks.
    
    This fixes a deadlock seen in one of the tracing tests.
    
    Change-Id: I580152118e068a70f309dcc19df4144afec835dd
    aa516829
scoped_gc_critical_section.h 1.41 KB