RFR: 8264337: VM crashed when -XX:+VerifySharedSpaces [v3]

Yi Yang yyang at openjdk.java.net
Tue Mar 30 07:13:02 UTC 2021


> `java -XX:+VerifySharedSpaces -version` reports an internal error that would crash VM:
> 
> [0.113s][error][cds] relocation bitmap CRC error
> [0.114s][error][cds] relocation bitmap CRC error
> # To suppress the following error report, specify this argument
> # after -XX: or in .hotspotrc: SuppressErrorAt=/javaClasses.inline.hpp:215
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # Internal Error (/home/qingfeng.yy/openjdk16_so_warning/jdk/src/hotspot/share/classfile/javaClasses.inline.hpp:215), pid=75241, tid=75242
> # assert(java_lang_Class::is_instance(java_class)) failed: must be a Class object
> #
> # JRE version: (17.0) (slowdebug build )
> # Java VM: OpenJDK 64-Bit Server VM (slowdebug 17-internal+0-adhoc.qingfengyy.jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
> # Problematic frame:
> # V [libjvm.so+0x697d19] java_lang_Class::as_Klass(oopDesc*)+0x29
> #
> # 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:
> # /home/qingfeng.yy/openjdk16_so_warning/jdk/build/linux-x86_64-server-slowdebug/images/jdk/bin/hs_err_pid75241.log
> #
> #
> The gut of this problem is that the calculation of crc32 for the CDS archive is inconsistent between dumptime and runtime, this will cause subsequent steps to deviate from the desired path one after another, eventually leading to an internal error that crashes the VM. 
> 
> All tests under hotspot/jtreg/runtime/cds are passed(excepts those problem-listed) with slowdebug mode.

Yi Yang has updated the pull request incrementally with one additional commit since the last revision:

  annotated @bug for bug-id

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3244/files
  - new: https://git.openjdk.java.net/jdk/pull/3244/files/0fe38b73..2d863d7f

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3244&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3244&range=01-02

  Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3244.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3244/head:pull/3244

PR: https://git.openjdk.java.net/jdk/pull/3244


More information about the hotspot-runtime-dev mailing list