diff options
author | Alex Light <allight@google.com> | 2020-02-19 14:46:33 -0800 |
---|---|---|
committer | Alex Light <allight@google.com> | 2020-02-24 12:28:23 -0800 |
commit | ce7a1a2ea4a01df0bd9cce59668bd69e57c31d30 (patch) | |
tree | 872ec6f3b162e0db02d9564e0e4080beeeaa13c3 /test/008-exceptions/src/MultiDexBadInit.java | |
parent | 870deedb27d064c6c3d63e5c2dd06bb2e036898c (diff) |
Fix race between dex-file registration and class-loader deletion
We keep track of class-loaders by having a list with jweak references
to the dex-caches. When we register a new dex-file we check that the
dex-cache hasn't already been registered with a different
class-loader. We decoded the jweak and performed this check this
without any locks however meaning we could race with class-loader
cleanup. This could cause CHECK failures as we try to decode a deleted
jweak.
Bug: 147206162
Test: ./art/test/run-test --create-runner --host --prebuild --compact-dex-level fast --optimizing --no-relocate --runtime-option -Xcheck:jni 2001-virtual-structural-multithread
./art/tools/parallel_run.py
Merged-In: Ibeb12ec3d42f7972d09b155b7c24743266897a54
Change-Id: Ibeb12ec3d42f7972d09b155b7c24743266897a54
(cherry picked from commit dc91717ad17d79ba50bafec4340000ebfcb7a366)
Diffstat (limited to 'test/008-exceptions/src/MultiDexBadInit.java')
0 files changed, 0 insertions, 0 deletions