RFR: 8140582: aarch64: jvm fails to initialise after 8078556

Edward Nevill edward.nevill at gmail.com
Tue Oct 27 10:21:10 UTC 2015


Please review the following webrev


JIRA Issue: https://bugs.openjdk.java.net/browse/JDK-8140582

The vm fails to initialises with the following error on aarch64 systems with 64K pagesize

ed at arm64:~/jdk9-dev/hs-comp/hotspot$ /home/ed/images/jdk/bin/java
intx StackYellowPages=1 is outside the allowed range [ 2 ... 7 ]
intx StackShadowPages=1 is outside the allowed range [ 4 ... 34 ]
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

The problem is the following code in src/os/linux/vm/os_linux.cpp

  // If the pagesize of the VM is greater than 8K determine the appropriate
  // number of initial guard pages.  The user can change this with the
  // command line arguments, if needed.
  if (vm_page_size() > (int)Linux::vm_default_page_size()) {
    StackYellowPages = 1;
    StackRedPages = 1;
    StackShadowPages = round_to((StackShadowPages*Linux::vm_default_page_size()), vm_page_size()) / vm_page_size();

My proposed fix is to set MIN_STACK_YELLOW_PAGES, MIN_STACK_RED_PAGES, and MIN_STACK_SHADOW_PAGES to 1 in globals_aarch64.hpp

Thanks for the review,

More information about the hotspot-compiler-dev mailing list