RFR: 8340177: Malformed system classes loaded by bootloader crash the JVM in product builds

David Holmes dholmes at openjdk.org
Tue Oct 22 00:28:48 UTC 2024


For core classes where verification is by default disabled, product builds would check for parsing/verification constraint violations but then ignore them. In contrast a debug build would check and report them even if verification were disabled. To make it easier for developers testing in product mode predominantly we changed the behaviour so that these constraints are always checked and reported. The intent was for product builds to run faster by skipping the checks, but in practice that doesn't happen - see bug report for background details.

The simple fix is to replace `check_property` calls with `guarantee_property`.

Testing:
 - tiers 1-4
 - basic performance/footprint testing (no significant changes)

Thanks

-------------

Commit messages:
 - 8340177: Malformed system classes loaded by bootloader crash the JVM in product builds

Changes: https://git.openjdk.org/jdk/pull/21626/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21626&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8340177
  Stats: 114 lines in 2 files changed: 0 ins; 55 del; 59 mod
  Patch: https://git.openjdk.org/jdk/pull/21626.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21626/head:pull/21626

PR: https://git.openjdk.org/jdk/pull/21626


More information about the hotspot-runtime-dev mailing list