JDK-8320757 : java --version crashes immediately on raspberry pi aarch64
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 22
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2023-11-18
  • Updated: 2023-11-28
  • Resolved: 2023-11-28
Related Reports
Duplicate :  
Description
ADDITIONAL SYSTEM INFORMATION :
xx@raspberrypi:/etc $ uname -a
Linux raspberrypi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux



A DESCRIPTION OF THE PROBLEM :
xx@raspberrypi:/opt/java $ jdk-22/bin/java --version
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (macroAssembler_aarch64.cpp:4658), pid=1170, tid=1171
#  guarantee((shifted_base & 0xffff0000ffffffff) == 0) failed: compressed class base bad alignment
#
# JRE version:  (22.0+24) (build )
# Java VM: OpenJDK 64-Bit Server VM (22-ea+24-1921, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linu      x-aarch64)
# Problematic frame:
# V  [libjvm.so+0xab3cf8]  MacroAssembler::decode_klass_not_null(Register, Register)+0x248
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Jav      a again
#
# An error report file with more information is saved as:
# /opt/java/hs_err_pid1170.log
#
#
Aborted


REGRESSION : Last worked in version 21.0.1

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Download Linux/Aarch64 jdk22 early access from https://jdk.java.net/22/
Untar the file.
execute java --versoin

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Print out the java version and be able to run java programs.
ACTUAL -
xx@raspberrypi:/opt/java $ jdk-22/bin/java
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (macroAssembler_aarch64.cpp:4658), pid=1953, tid=1954
#  guarantee((shifted_base & 0xffff0000ffffffff) == 0) failed: compressed class base bad alignment
#
# JRE version:  (22.0+24) (build )
# Java VM: OpenJDK 64-Bit Server VM (22-ea+24-1921, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64)
# Problematic frame:
# V  [libjvm.so+0xab3cf8]  MacroAssembler::decode_klass_not_null(Register, Register)+0x248
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /opt/java/hs_err_pid1953.log
#
#
Aborted


---------- BEGIN SOURCE ----------
no source necessary
---------- END SOURCE ----------

CUSTOMER SUBMITTED WORKAROUND :
Go back to jdk21 :(  

FREQUENCY : always



Comments
This is a duplicate of JDK-8318119 which is closed as a duplicate of JDK-8320368
28-11-2023

The issue is on raspberrypi # Problematic frame: # V [libjvm.so+0xab3cf8] MacroAssembler::decode_klass_not_null(Register, Register)+0x248 Moving it to dev team for analysis.
27-11-2023