RFR: 8343839: Detect patched modules and abort run-time image link early [v4]

Severin Gehwolf sgehwolf at openjdk.org
Tue Dec 3 14:42:37 UTC 2024


> Please review this fix to how patched modules are being handled when linking from the run-time image. During review of [JDK-8311302](https://bugs.openjdk.org/browse/JDK-8311302) it was pointed out that module patching should be detected earlier and the link should get aborted in that case.
> 
> This patch implements it, by using `ModuleBootstrap.patcher().hasPatches()`. After this patch module patching is being detected before any archives are being read or the actual linking process starts (contrary to the previous solution).
> 
> Testing:
> - [x] GHA testing (mac aarch64 test failures are infra related)
> - [x] Local testing of existing test, which covers it
> 
> Thoughts?

Severin Gehwolf has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 19 additional commits since the last revision:

 - Better error message as suggested by Mandy
 - Cleanup test code
 - Simplify handling of modified runtime
   
   Remove RuntimeImageLinkException which is no longer needed.
 - Merge branch 'master' into jdk-8343839-detect-patch-module
 - Merge branch 'master' into jdk-8343839-detect-patch-module
 - Use ModuleBootStrap for detecting patches
 - Revert "8344560: Add system property for patched runtime"
   
   This reverts commit 1d2395f39ee95a80937c63713e1f874ecc4ae76e.
 - Revert "Move and amend test"
   
   This reverts commit c27c874b4c722aa4cfa5f6c71f9231e92a30db0c.
 - Revert "Set the property to false for unpatched, expand tests"
   
   This reverts commit c635fdc0ad09c68ef652afb516c221b3c3a6299f.
 - Revert "Mention jdk.patched in System class"
   
   This reverts commit a11e26637d89d5ae840753eabcfe6deb2ac025be.
 - ... and 9 more: https://git.openjdk.org/jdk/compare/affa70db...52d09a18

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/22037/files
  - new: https://git.openjdk.org/jdk/pull/22037/files/77695cea..52d09a18

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=22037&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=22037&range=02-03

  Stats: 10029 lines in 191 files changed: 4870 ins; 3613 del; 1546 mod
  Patch: https://git.openjdk.org/jdk/pull/22037.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/22037/head:pull/22037

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


More information about the core-libs-dev mailing list