RFR: 8312181: CDS dynamic dump crashes when verifying unlinked class from static archive
Calvin Cheung
ccheung at openjdk.org
Fri Jul 28 21:27:09 UTC 2023
During CDS dynamic dump, VM crashes due to `assert(!k->is_shared()) failed` while linking an old class (class file version <= 49) loaded from the static archive. The fix mostly adjusts some assert statements based on static vs dynamic dumping. In `MetaspaceShared::try_link_class`, if linking of a shared class during dynamic dump has failed, the `shared_loading_failed` flag will be set to avoid linking the same class again.
Passed tiers 1 - 4 testing.
-------------
Commit messages:
- 8312181: CDS dynamic dump crashes when verifying unlinked class from static archive
Changes: https://git.openjdk.org/jdk/pull/15077/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15077&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8312181
Stats: 207 lines in 7 files changed: 190 ins; 3 del; 14 mod
Patch: https://git.openjdk.org/jdk/pull/15077.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15077/head:pull/15077
PR: https://git.openjdk.org/jdk/pull/15077
More information about the hotspot-runtime-dev
mailing list