Skip to content

[FFI_JDK21/Test] Enable the downcall tests for primitives on z/OS - #19384

Merged
keithc-ca merged 1 commit into
eclipse-openj9:masterfrom
ChengJin01:ffi_enable_prim_tests_jdk21_zos
May 1, 2024
Merged

[FFI_JDK21/Test] Enable the downcall tests for primitives on z/OS#19384
keithc-ca merged 1 commit into
eclipse-openj9:masterfrom
ChengJin01:ffi_enable_prim_tests_jdk21_zos

Conversation

@ChengJin01

@ChengJin01 ChengJin01 commented Apr 25, 2024

Copy link
Copy Markdown

The changes only enable the downcall specific tests for primitives
on z/OS to ensure FFI functionally works as expected given the
related code issues with the remaining test cases have not yet been
resolved on z/OS.

Related: Internal 441

Signed-off-by: ChengJin01 jincheng@ca.ibm.com

@ChengJin01

ChengJin01 commented Apr 25, 2024

Copy link
Copy Markdown
Author

Note:
[1] The enabled test cases for primitives are verified with the changes at #185 on JDK21/zOS (the encoding mode for zOS in build.xml and testng_210.xml will be addressed by @llxia later)
[2] The disabled downcall tests include the default library loading and struct/union which have not yet resolved for the moment.

@ChengJin01 ChengJin01 added comp:test project:panama Used to track Project Panama related work os:zos jdk21 labels Apr 25, 2024
@ChengJin01

Copy link
Copy Markdown
Author

Reviewer: @TobiAjila, @llxia
FYI: @keithc-ca, @pshipton

@ChengJin01
ChengJin01 requested review from llxia and tajila April 25, 2024 21:48
@ChengJin01
ChengJin01 force-pushed the ffi_enable_prim_tests_jdk21_zos branch from 273ce64 to 594d172 Compare April 25, 2024 21:51
@llxia

llxia commented Apr 26, 2024

Copy link
Copy Markdown
Contributor

the encoding mode for zOS in build.xml and testng_210.xml will be addressed by @llxia later

We can run functional tests on JDK21 zOS with IBM_JAVA_OPTIONS="-Dfile.encoding=IBM-1047" in Jenkins (See backlog/issues/1424). There is no additional XML encoding issue in Grinder for JDK21 other than set IBM_JAVA_OPTIONS="-Dfile.encoding=IBM-1047".

@llxia

llxia commented Apr 26, 2024

Copy link
Copy Markdown
Contributor

To test this PR in Jenkins Grinder, we need build with PR openj9-openjdk-jdk21-zos/pull/185/.

Thanks @ChengJin01 for testing this change on zOS machine.

@llxia

llxia commented Apr 26, 2024

Copy link
Copy Markdown
Contributor

non-zOS: https://openj9-jenkins.osuosl.org/view/Test/job/Grinder/3537/ ==> passed

00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_invalidMemoryLayoutForMemAddr. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_invalidMemoryLayoutForReturnType. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_heapSegmentForStructArgument. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_strlenFromDefaultLibWithMemAddr_1. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_memoryAllocFreeFromDefaultLib_1. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_printfFromDefaultLibWithMemAddr_1. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:56.572  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_printfFromDefaultLibWithMemAddr_LinkerOption_1. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:57.043  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_strlenFromDefaultLibWithMemAddr_2. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:57.043  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_memoryAllocFreeFromDefaultLib_2. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:57.043  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_printfFromDefaultLibWithMemAddr_2. Disable annotation: [level.sanity, disabled.zos_390-64]
00:01:57.043  [IncludeExcludeTestAnnotationTransformer] [INFO] Disable method: test_printfFromDefaultLibWithMemAddr_LinkerOption_2. Disable annotation: [level.sanity, disabled.zos_390-64]

Comment thread test/TestConfig/resources/excludes/latest_exclude_21.txt Outdated

@llxia llxia left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@tajila

tajila commented Apr 29, 2024

Copy link
Copy Markdown
Contributor

jenkins test sanity zos JDK21

@ChengJin01
ChengJin01 force-pushed the ffi_enable_prim_tests_jdk21_zos branch from f1b984b to 8b72539 Compare April 29, 2024 16:09
Comment thread jcl/src/java.base/share/classes/jdk/internal/foreign/abi/UpcallLinker.java Outdated
Comment thread jcl/src/java.base/share/classes/jdk/internal/foreign/abi/UpcallLinker.java Outdated
Comment thread test/functional/Java21Only/build.xml Outdated
@ChengJin01
ChengJin01 force-pushed the ffi_enable_prim_tests_jdk21_zos branch from 8b72539 to abaeb2b Compare April 29, 2024 22:10
@keithc-ca

Copy link
Copy Markdown
Contributor

Please update the commit message so z/OS is spelled properly.

The changes only enable the downcall specific tests for primitives
on z/OS to ensure FFI functionally works as expected given the
related code issues with the remaining test cases have not yet been
resolved on z/OS.

Signed-off-by: ChengJin01 <jincheng@ca.ibm.com>
@ChengJin01
ChengJin01 force-pushed the ffi_enable_prim_tests_jdk21_zos branch from abaeb2b to 61c8e5e Compare April 30, 2024 15:24
@ChengJin01 ChengJin01 changed the title [FFI/Test] Enable the downcall tests for primitives in JDK21/zOS [FFI_JDK21/Test] Enable the downcall tests for primitives on z/OS Apr 30, 2024
@ChengJin01

Copy link
Copy Markdown
Author

Please update the commit message so z/OS is spelled properly.

Fixed.

@keithc-ca
keithc-ca merged commit 0a576e3 into eclipse-openj9:master May 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp:test jdk21 os:zos project:panama Used to track Project Panama related work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants