Skip to content

(don't merge now) Fix CI tests for OpenJDK 21 #305

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 88 commits into from

Conversation

wks
Copy link
Contributor

@wks wks commented Apr 23, 2025

This PR is for testing the CI scripts for OpenJDK 21. Don't merge it now.

caizixian and others added 3 commits October 24, 2023 11:21
OpenJDK no longer reserves 4 words for every frame, but instead let each
GC barrier set decide the reserved size.  We reserve 3 words for MMTk's
C1 barrier set.

See: openjdk/jdk@36a0822
@wks
Copy link
Contributor Author

wks commented Apr 23, 2025

The good thing is that most test cases passed. There is a Clippy warning about enum variant name in KlassID. We should either rename KlassID to KlassKind because it was renamed upstream, or make it an alias of i32 because it is not used in the Rust part anyway. And I think we should double check those mirrored data structures because other types may be renamed upstream, too.

We should also check if the CI scripts in mmtk-core, especially minimal test, work.

@wks
Copy link
Contributor Author

wks commented Apr 23, 2025

There are failed test cases that involve DaCapo Chopin benchmarks. Because we already saw them failing on the master branch, I will not attempt to fix them for now. But we should switch from the current DaCapo Chopin 23.9 RC3 to DaCapo Chopin 23.11 MR2 because there may be problems in DaCapo, too.

@wks wks force-pushed the fix/ci-jdk21 branch 6 times, most recently from 15730df to f2b9a1a Compare April 25, 2025 08:11
wks added 10 commits April 28, 2025 14:06
This follows the upstream change
This changes paths build options, etc., to make the CI scripts work with
OpenJDK 21.

We now use a single source of truth for the OpenJDK path instead of
defining OPENJDK_PATH in multiple scripts.
Use jdk21 workarounds for Cassandra and H2O
We just use the name defined in running-ng, i.e. "dacapochopin".  This
allows us to use modifiers such as "dacapochopin_jdk21" which expects
the benchmark suite name "dacapochopin".
@wks
Copy link
Contributor Author

wks commented Apr 29, 2025

Closed in favor for #307

@wks wks closed this Apr 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants