RFR: 8264337: VM crashed when -XX:+VerifySharedSpaces [v2]
Aleksey Shipilev
shade at openjdk.java.net
Tue Mar 30 07:13:04 UTC 2021
On Tue, 30 Mar 2021 06:58:24 GMT, Yi Yang <yyang at openjdk.org> wrote:
>> `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:
>
> newline
test/hotspot/jtreg/runtime/cds/appcds/VerifyWithDefaultArchive.java line 26:
> 24:
> 25: /*
> 26: * @test 8264337
Sorry, one other minor nit. This should be:
@test
@bug 8264337
-------------
PR: https://git.openjdk.java.net/jdk/pull/3244
More information about the hotspot-runtime-dev
mailing list