eclipse-openj9 / openj9

Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Other
3.28k stars 721 forks source link

jdk17: Type=Segmentation error vmState=0x0002000f #11887

Open andrew-m-leonard opened 3 years ago

andrew-m-leonard commented 3 years ago

https://ci.adoptopenjdk.net/job/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/19/console

04:18:53  compile:
04:18:53       [echo] Ant version is Apache Ant(TM) version 1.10.5 compiled on July 10 2018
04:18:53       [echo] ============COMPILER SETTINGS============
04:18:53       [echo] ===fork:                         yes
04:18:53       [echo] ===executable:                   /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdkbinary/j2sdk-image/bin/javac
04:18:53       [echo] ===debug:                        on
04:18:53       [echo] ===destdir:                      /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/TKG/../../jvmtest/functional/cmdLineTests/shareClassTests/StoreFilterTests
04:18:53      [mkdir] Created dir: /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin/APITests
04:18:53       [copy] Copying 5 files to /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin/APITests
04:18:53      [javac] /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/build.xml:70: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
04:18:53      [javac] Compiling 20 source files to /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin
04:19:03      [javac] Note: Some input files use or override a deprecated API.
04:19:03      [javac] Note: Recompile with -Xlint:deprecation for details.
04:19:03      [javac] Note: Some input files use unchecked or unsafe operations.
04:19:03      [javac] Note: Recompile with -Xlint:unchecked for details.
04:19:03      [mkdir] Created dir: /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin/Resources
04:19:03       [copy] Copying 6 files to /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin/Resources
04:19:03      [javac] Compiling 19 source files to /home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdk-tests/functional/cmdLineTests/shareClassTests/StoreFilterTests/bin/Resources
04:19:06      [javac] Unhandled exception
04:19:06      [javac] Type=Segmentation error vmState=0x0002000f
04:19:06      [javac] J9Generic_Signal_Number=00000018 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000001
04:19:06      [javac] Handler1=0000FFFFA575A020 Handler2=0000FFFFA56D33E8 InaccessibleAddress=0000000000000018
04:19:06      [javac] R0=0000FFFFA00501A0 R1=0000FFFFA00285A8 R2=0000FFFFA63D1540 R3=0000FFFFA63D1508
04:19:06      [javac] R4=0000FFFFA63D1510 R5=0000FFFFA63D1518 R6=0000000000000000 R7=00000000020E0001
04:19:06      [javac] R8=0000000000000000 R9=0000FFFF9FF47C98 R10=0000FFFF9FF47CB0 R11=0000FFFF9FF47CC8
04:19:06      [javac] R12=0000FFFF9FF47CE0 R13=0000FFFF9FF47CF8 R14=0000FFFF9FF47D10 R15=000047C801EB4BB1
04:19:06      [javac] R16=0000FFFFA4499008 R17=0000FFFFA647DB40 R18=0000000000000002 R19=0000000000000000
04:19:06      [javac] R20=0000FFFF9FF48B08 R21=0000FFFFA63D1510 R22=0000FFFFA63D1518 R23=0000FFFFA63D1540
04:19:06      [javac] R24=0000FFFFA63D1508 R25=0000FFFFA63D1670 R26=0000FFFFA4498000 R27=0000FFFFA00501A0
04:19:06      [javac] R28=0000FFFF9FC5C5C0 R29=0000FFFFA63D1390 R30=0000FFFFA4390DE8 R31=0000FFFFA63D1390
04:19:06      [javac] PC=0000FFFFA43C56BC SP=0000FFFFA63D1390 PSTATE=0000000060000000
04:19:06      [javac] V0 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V1 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V2 0000ffff9fc5b430 (f: 2680534016.000000, d: 1.390663e-309)
04:19:06      [javac] V3 00000000be8dbaac (f: 3196959488.000000, d: 1.579508e-314)
04:19:06      [javac] V4 00000000be1a0a75 (f: 3189377536.000000, d: 1.575762e-314)
04:19:06      [javac] V5 000000003717f7d1 (f: 924317632.000000, d: 4.566736e-315)
04:19:06      [javac] V6 000000003cb9612a (f: 1018782016.000000, d: 5.033452e-315)
04:19:06      [javac] V7 0000000041a00000 (f: 1101004800.000000, d: 5.439686e-315)
04:19:06      [javac] V8 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V9 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V10 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V11 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V12 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V13 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V14 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V15 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V16 000000003f2aaaab (f: 1059760832.000000, d: 5.235914e-315)
04:19:06      [javac] V17 000000003e924925 (f: 1049774400.000000, d: 5.186575e-315)
04:19:06      [javac] V18 000000003e638e29 (f: 1046711872.000000, d: 5.171444e-315)
04:19:06      [javac] V19 000000003e3a3325 (f: 1044001600.000000, d: 5.158053e-315)
04:19:06      [javac] V20 0000ffffa63d1a18 (f: 2789022208.000000, d: 1.390664e-309)
04:19:06      [javac] V21 0000ffffa63d1a08 (f: 2789022208.000000, d: 1.390664e-309)
04:19:06      [javac] V22 0000ffffa63d19f8 (f: 2789022208.000000, d: 1.390664e-309)
04:19:06      [javac] V23 00000000000000f0 (f: 240.000000, d: 1.185758e-321)
04:19:06      [javac] V24 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V25 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V26 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V27 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V28 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V29 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V30 0000000000000000 (f: 0.000000, d: 0.000000e+00)
04:19:06      [javac] V31 000000003f400000 (f: 1061158912.000000, d: 5.242822e-315)
04:19:06      [javac] Module=/home/jenkins/workspace/Test_openjdk17_j9_sanity.functional_aarch64_linux_xl/openjdkbinary/j2sdk-image/lib/default/libj9gc29.so
04:19:06      [javac] Module_base_address=0000FFFFA4229000
04:19:06      [javac] Target=2_90_20210205_59 (Linux 4.10.0-38-generic)
04:19:06      [javac] CPU=aarch64 (96 logical CPUs) (0x7d68ba000 RAM)
04:19:06      [javac] ----------- Stack Backtrace -----------
04:19:06      [javac] (0x0000FFFFA56D0040 [libj9prt29.so+0x26040])
04:19:06      [javac] ---------------------------------------
dmitripivkine commented 3 years ago

@andrew-m-leonard Would you please point me to test stored results if any? I need system core for investigation

dmitripivkine commented 3 years ago

Just based on InaccessibleAddress=0000000000000018 there is most likely a bogus (stall?) object pointer or heap corruption caused Scavenger to take NULL as a class pointer from object to copy.

pshipton commented 3 years ago

Since this is aarch64, @knn-k fyi.

andrew-m-leonard commented 3 years ago

@dmitripivkine unfortunately it never got as far as running tests, it's crashed Compiling the tests, so no output. The binary it is using to compile (javac) is https://ci.adoptopenjdk.net/job/build-scripts/job/jobs/job/jdk/job/jdk-linux-aarch64-openj9-linuxXL/59/

dmitripivkine commented 3 years ago

@knn-k I think you are in a better position to try to reproduce it. Also there is high probability the reason for crash is a JIT problem, so I believe you are in a better position to investigate too. Please let me know if you need help from GC side to identify problematic pattern caused crash in GC

knn-k commented 3 years ago

I ran make compile for functional tests 10 times, using the latest binary from https://ci.adoptopenjdk.net/job/build-scripts/job/jobs/job/jdk/job/jdk-linux-aarch64-openj9-linuxXL/60/ . (The binary from 59 is no longer available) Builds were successful and I saw no failures.

knn-k commented 3 years ago

I also tried running make compile on cent7-aarch64-1 (96 CPU cores) using the same binary as above. I got no failures out of 10 runs. It takes 18 minutes for a single round of running make compile on that machine.