Use GC critical section for profile saver
Since visit classes uses DecodeWeakGlobal, it may block on decoding weak globals. This can cause deadlocks since it will be blocked while holding the classlinker classes lock. Using a GC critical section ensures that the GC is not running while we visit the classes for the profile saver. I didn't put the logic in the VisitClasses call since some of the callers already have no thread suspension checks that would fail from this. Bug: 38350590 Test: test-art-host ART_TEST_JIT=true (cherry picked from commit 39100372) Change-Id: I1b8350638ce0a0486b2672100e582dc3a049b0fd
Loading
Please sign in to comment