Skip to content
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

DDR support on AArch64 macOS #14387

Closed
knn-k opened this issue Jan 28, 2022 · 8 comments
Closed

DDR support on AArch64 macOS #14387

knn-k opened this issue Jan 28, 2022 · 8 comments

Comments

@knn-k
Copy link
Contributor

knn-k commented Jan 28, 2022

There are a couple of problems with DDR support on AArch64 macOS:

  • Build failures under certain condition
  • Error message ""DDR is not enabled for this core file" in jdmpview
@knn-k
Copy link
Contributor Author

knn-k commented Jan 28, 2022

Error in building DDR:

00:07:14.225  * For target jdk_modules_openj9.dtfj__the.openj9.dtfj_batch:
00:07:14.225  /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/support/j9jcl/openj9.dtfj/share/classes/com/ibm/j9ddr/vm29/j9/stackwalker/MethodMetaData.java:29: error: cannot find symbol
00:07:14.226  import static com.ibm.j9ddr.vm29.structure.MethodMetaDataConstants.INTERNAL_PTR_REG_MASK;
00:07:14.226                                            ^
00:07:14.226    symbol:   class MethodMetaDataConstants
00:07:14.226    location: package com.ibm.j9ddr.vm29.structure
(... many other errors follow ...)

I cannot reproduce this in my local environment.

@pshipton pshipton added perm excluded The test is unsuitable and permanently excluded. test excluded and removed perm excluded The test is unsuitable and permanently excluded. labels Jan 28, 2022
@knn-k
Copy link
Contributor Author

knn-k commented Feb 2, 2022

Building DDR tests in Jenkins jobs fails as shown below.

https://openj9-jenkins.osuosl.org/job/Test_openjdk17_j9_sanity.functional_aarch64_mac_Personal_testList_0/1/consoleText

[2022-02-02T03:49:56.828Z] build:
[2022-02-02T03:49:56.828Z]      [echo] os.name: Mac OS X
[2022-02-02T03:49:56.828Z] 
[2022-02-02T03:49:56.828Z] BUILD FAILED
[2022-02-02T03:49:56.828Z] /Users/****/workspace/Test_openjdk17_j9_sanity.functional_aarch64_mac_Personal_testList_0/aqa-tests/TKG/scripts/build_test.xml:95: The following error occurred while executing this line:
[2022-02-02T03:49:56.829Z] /Users/****/workspace/Test_openjdk17_j9_sanity.functional_aarch64_mac_Personal_testList_0/aqa-tests/functional/build.xml:52: The following error occurred while executing this line:
[2022-02-02T03:49:56.829Z] /Users/****/workspace/Test_openjdk17_j9_sanity.functional_aarch64_mac_Personal_testList_0/aqa-tests/functional/DDR_Test/build.xml:135: File 'j9ddr.dat' not found; assuming JDK '/Users/****/workspace/Test_openjdk17_j9_sanity.functional_aarch64_mac_Personal_testList_0/openjdkbinary/j2sdk-image' does not support DDR.

@knn-k
Copy link
Contributor Author

knn-k commented Feb 3, 2022

Enabling DDR build in #14420 resulted in the following error -- Segmentation faults from dwarfdump-classic and omr_ddrgen:
https://openj9-jenkins.osuosl.org/job/Build_JDK17_aarch64_mac_Personal/21/consoleText

[2022-02-02T23:57:58.337Z] sh: line 1: 34201 Segmentation fault: 11  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dwarfdump-classic /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9ddr_misc29.dylib.dSYM/Contents/Resources/DWARF/libj9ddr_misc29.dylib 2>&1
[2022-02-02T23:57:58.337Z] /bin/sh: line 1: 34193 Segmentation fault: 11  /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/omr_ddrgen /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9ddr_misc29.dylib.dSYM/Contents/Resources/DWARF/libj9ddr_misc29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9gc29.dylib.dSYM/Contents/Resources/DWARF/libj9gc29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libjclse29.dylib.dSYM/Contents/Resources/DWARF/libjclse29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9jvmti29.dylib.dSYM/Contents/Resources/DWARF/libj9jvmti29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9prt29.dylib.dSYM/Contents/Resources/DWARF/libj9prt29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9trc29.dylib.dSYM/Contents/Resources/DWARF/libj9trc29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9shr29.dylib.dSYM/Contents/Resources/DWARF/libj9shr29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9thr29.dylib.dSYM/Contents/Resources/DWARF/libj9thr29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9vrb29.dylib.dSYM/Contents/Resources/DWARF/libj9vrb29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libj9vm29.dylib.dSYM/Contents/Resources/DWARF/libj9vm29.dylib /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/libomrsig.dylib.dSYM/Contents/Resources/DWARF/libomrsig.dylib --show-empty --macrolist /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/ddr_info/sets/j9ddr.macros --excludes /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/openj9/runtime/ddr/excludes --blob /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/j9ddr.dat --superset /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/superset.dat --overrides /Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/openj9/runtime/ddr/overrides
[2022-02-02T23:57:58.337Z] make[10]: *** [/Users/jenkins/workspace/Build_JDK17_aarch64_mac_Personal/build/macosx-aarch64-server-release/vm/runtime/j9ddr.dat] Error 139

@knn-k
Copy link
Contributor Author

knn-k commented Feb 3, 2022

We need to add support for AArch64 in debugtools/DDR_VM/src/com/ibm/j9ddr/corereaders/macho/MachoDumpReader.java

knn-k added a commit to knn-k/openj9 that referenced this issue Feb 10, 2022
This commit excludes some functional tests that fail on AArch64 macOS.

- DDR-related tests (eclipse-openj9#14387)
- threadMXBeanTestSuite2_0 (eclipse-openj9#14426)

Original PR in master: eclipse-openj9#14427

Signed-off-by: KONNO Kazuhiro <konno@jp.ibm.com>
@knn-k
Copy link
Contributor Author

knn-k commented Apr 22, 2022

eclipse-omr/omr#6491 needs to be resolved for enabling DDR build.

@knn-k
Copy link
Contributor Author

knn-k commented Apr 27, 2022

I made sure that my local build passes all the DDR tests that will be enabled by #14961.

@pshipton
Copy link
Member

Afaik this is completed now that #14420 is merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants