[lilliput-jdk17u:lilliput] RFR: 8309192: [Lilliput/JDK17] Properly deal with flag mismatch in CDS [v2]
Thomas Stuefe
stuefe at openjdk.org
Thu Jun 1 12:35:08 UTC 2023
On Wed, 31 May 2023 16:11:53 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> See the discussion in the bug.
>>
>> There is a problem that disabling Lilliput effectively disables CDS. I think for 17u we should disable UCOH by default, and disable CDS when UCOH is on. That is, keep the legacy configuration untouched, and let Lilliput pay the price, if any.
>>
>> Additional testing:
>> - [x] macos-aarch64-server-fastdebug, `runtime/cds`
>
> Aleksey Shipilev has updated the pull request incrementally with two additional commits since the last revision:
>
> - Cherry-pick
> - Revert old patch
Okay.
Just to verify, starting with +UCOH and Xshare:on (or default) will now refuse to load the jsa, right?
BTW, with https://github.com/openjdk/jdk/compare/master...tstuefe:jdk:metaspace-for-lilliput, I am generating three CDS archives, the usual two:
- classes.jsa (-UCOH, +UCCP)
- classes_NOCOOPS.jsa (-UCOH, -UCCP)
and then another one
- classes_COH.jsa (+UCOH, +UCCP)
See https://github.com/openjdk/jdk/compare/master...tstuefe:jdk:metaspace-for-lilliput#diff-d154aac37a1c81733d3e283f77239d8f21e4c3e42c56063bac1d005d280b1520
so we have an archive for +UCOH ready without use having to Xshare:dump first
test/hotspot/jtreg/runtime/cds/CdsDifferentCompactObjectHeaders.java line 50:
> 48: // Parameters are object alignment expressed in bytes
> 49: private static void
> 50: createAndLoadSharedArchive(boolean createCompactHeaders, boolean loadCompactHeaders)
Small nit, weird naming. Proposal: `s/createCompactHeaders/useCOHOnCreate` or similar, same for Load
-------------
Marked as reviewed by stuefe (Reviewer).
PR Review: https://git.openjdk.org/lilliput-jdk17u/pull/29#pullrequestreview-1455344254
PR Review Comment: https://git.openjdk.org/lilliput-jdk17u/pull/29#discussion_r1213071978
More information about the lilliput-dev
mailing list