Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8234794

AArch64: runtime/memory/ReadFromNoaccessArea.java crashes

XMLWordPrintable

    • b03
    • aarch64
    • linux

      On a debug build you get an assertion failure when generating the itable stub like this:

      # To suppress the following error report, specify this argument
      # after -XX: or in .hotspotrc: SuppressErrorAt=/vtableStubs_aarch64.cpp:220
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (src/hotspot/cpu/aarch64/vtableStubs_aarch64.cpp:220), pid=151750, tid=151751
      # assert(slop_delta >= 0) failed: itable #2: Code size estimate (152) for lookup_interface_method too small, required: 156
      #
      # JRE version: OpenJDK Runtime Environment (14.0) (fastdebug build 14-internal+0-adhoc.nicgas01.jdk)
      # Java VM: OpenJDK 64-Bit Server VM (fastdebug 14-internal+0-adhoc.nicgas01.jdk, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-aarch64)
      # Problematic frame:
      # V [libjvm.so+0x17034ec] VtableStubs::create_itable_stub(int)+0xda4
      #
      # CreateCoredumpOnCrash turned off, no core file dumped
      #
      # An error report file with more information is saved as:
      # /home/nicgas01/jdk/hs_err_pid151750.log
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #

      On a release build there's a guarantee() failure later on:

      # Internal Error (vtableStubs.cpp:197), pid=6213, tid=6217
      # guarantee(masm->pc() <= s->code_end()) failed: itable #2: overflowed buffer, estimated len: 176, actual len: 180, overrun: 4

      JDK-8231610 changed the location of where things are loaded during this test which triggers a very inefficient path in MacroAssembler::decode_klass_not_null. This then overflows the expected maximum itable stub size.

            ngasson Nick Gasson
            ngasson Nick Gasson
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: