-
Notifications
You must be signed in to change notification settings - Fork 721
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
OpenSSL v3 causes abort on mac? #17577
Comments
I looked into the core file
Then I ran the command as so to see the information about the current thread ( ID
The javacore has the following thread which is very similar to the core dump which fails in
This does seem like it is related to loading of OpenSSL 3, or the JNI code related to calling OpenSSL. I did not however see a native trace here to see where the error occurs. Is the only known difference between a working build and this failing build the openssl 3 bundling upgrade? I can see that the docker image was also updated in PR #14900 which I assume contains additional build dependencies such as perl packages? |
Pretty much. The nightly builds have always worked fine, and the only change here is the OpenSSL version. The docker image update was only for alinux, and it should have only added perl-IPC-Cmd which you can't compile OpenSSL v3 without.
You need to use the native debugger (lldb), probably the same machine where the crash occurred, or maybe a machine which is the same OS version would work. |
It might be easier to build on your machine and see if the crash is recreated. |
Right previous bundled builds would hit this perl dependency problem so we must be past that issue with the Our code for loading the dll on mac currently loads the the DLL names in a specific order with specific names. So i am not sure this code will work unless the general name I will check into trying to build openjdk on my local mac. If the build fails I can try to use |
According to several posted issues about the unsafe loading of the |
@jasonkatonica wrote a C program to reproduce that:
|
This produces the following message:
|
A fix for this issue has been merged into all Java releases except for Java 8. Java next fix for AIX: ibmruntimes/openj9-openjdk-jdk#632 Java next fix for other platforms: ibmruntimes/openj9-openjdk-jdk#616 Multi platforms OpenJDK21: ibmruntimes/openj9-openjdk-jdk21#21 Multi platforms OpenJDK17: ibmruntimes/openj9-openjdk-jdk17#240 Multi platforms OpenJDK11: ibmruntimes/openj9-openjdk-jdk11#685 We will need to backport a fix for Java 8 also. |
ibmruntimes/openj9-openjdk-jdk8#683 is merged for jdk8. |
In #14900 I did jdk11 builds for all platforms using OpenSSL 3.09. There was an "abort" event on the two mac platforms, which I assume is related to OpenSSL.
https://openj9-jenkins.osuosl.org/job/Build_JDK11_x86-64_mac_Personal/513
https://openj9-artifactory.osuosl.org/artifactory/ci-openj9/Build_JDK11_x86-64_mac_Personal/513/Build_JDK11_x86-64_mac_Personal-513-20230531-175153-diagnostics.tar.gz
https://openj9-jenkins.osuosl.org/job/Build_JDK11_aarch64_mac_Personal/342
https://openj9-artifactory.osuosl.org/artifactory/ci-openj9/Build_JDK11_aarch64_mac_Personal/342/Build_JDK11_aarch64_mac_Personal-342-20230601-074019-diagnostics.tar.gz
On amac there is a warning related to libcrypto. I expect you could get a native stack trace for the "abort" by loading the core file into the debugger.
@jasonkatonica
The text was updated successfully, but these errors were encountered: