Commit fe2a39d1 authored by Alex Light's avatar Alex Light
Browse files

Revert "Temporarily disable lazy class-file-load-hook"

An ASAN failure was caused by a rare interaction between the
fault-handler and updating the internal book-keeping for the
ClassFileLoadHook. When we update the current definition for the
ClassFileLoadHook we check to see if the definition has actually
changed. This causes a read from the previous dex-file buffer. If the
buffer is lazy and the agent never accessed it (very rare outside of
testing) the SEGV will occur within art code in the kRunnable state.
This caused the runtime to think the SEGV was coming from java code
and perform some illegal reads prior to figuring out that the SEGV did
not come from java.

To fix this we simply make sure all the code that can cause the SEGV
occurs while the runtime is in kNative state.

We add an assert for this in the fault handler itself.

Reason for revert: Fixed issue causing ASAN failure with lazy dex-file
                   load hook.

This reverts commit 37977705.


Bug: 72909916
Test: ./test/testrunner/run-_build_test_target.py -j50 art-asan

Change-Id: I8b2d2fda8092a379e0019db15ec360a5a63d8b3f
parent 6db9a6c2
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment