[Ping] Re: Request for Approval: Backport of 8047212 : runtime/ParallelClassLoading/bootstrap/random/inner-complex assert(ObjectSynchronizer::verify_objmon_isinpool(inf)) failed: monitor is invalid

Yangfei (Felix) felix.yang at huawei.com
Fri Aug 30 06:31:18 UTC 2019



May I got review for the backport of 8146792 to 8u master repo please?

Webrev: http://cr.openjdk.java.net/~fyang/8047212-8u-backport/webrev.00/

       Bug: https://bugs.openjdk.java.net/browse/JDK-8047212

       JDK9 Changeset: http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/a0c7a69277da

This bug can always be reproduced by running jcstress test on our 64/128-core aarch64 server platform with 8u aarch64 fastdebug build.

Error messge:


# A fatal error has been detected by the Java Runtime Environment:


#  Internal Error (/home/yangfei/openjdk8u-aarch64/hotspot/src/share/vm/runtime/synchronizer.cpp:1252), pid=16581, tid=0x0000ffff23c7f200

#  assert(ObjectSynchronizer::verify_objmon_isinpool(inf)) failed: monitor is invalid


# JRE version: OpenJDK Runtime Environment (8.0) (build 1.8.0-internal-fastdebug-yangfei_2019_08_18_14_24-b00)

# Java VM: OpenJDK 64-Bit Server VM (25.71-b00-fastdebug mixed mode linux-aarch64 compressed oops)

# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again


# If you would like to submit a bug report, please visit:

#   http://bugreport.java.com/bugreport/crash.jsp


---------------  T H R E A D  ---------------

Current thread (0x0000ffff24123000):  JavaThread "worker1" daemon [_thread_in_Java, id=16798, stack(0x0000ffff23a7f000,0x0000ffff23c80000)]

Stack: [0x0000ffff23a7f000,0x0000ffff23c80000],  sp=0x0000ffff23c7dac0,  free space=2042k

Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)

V  [libjvm.so+0x1117444]  VMError::report_and_die()+0x144

V  [libjvm.so+0x703ba4]  report_vm_error(char const*, int, char const*, char const*)+0x7c

V  [libjvm.so+0x1032a78]  ObjectSynchronizer::inflate(Thread*, oop)+0xbc8

V  [libjvm.so+0x1036b40]  ObjectSynchronizer::slow_exit(oop, BasicLock*, Thread*)+0x110

V  [libjvm.so+0xeeb340]  SharedRuntime::complete_monitor_unlocking_C(oopDesc*, BasicLock*)+0x130

J 73% C2 org.openjdk.jcstress.tests.seqcst.sync.L1_S1__S1__S1__S2_L2__Test_jcstress.actor3()Ljava/lang/Void; (166 bytes) @ 0x0000ffff782c4318 [0x0000ffff782c2


C  0x0000ffff2e872650

   As the patch changes shared code, it has to be backported to 8u master repo before it goes to 8u-aarch64 repo.

      Due to the use of 'PaddedEnd' in jdk9 or higher version, some trivial tweaks are necessary for the backport.

   As we changed to use ordered access for global `gBlockList`, risk should be low.

   Jtreg tested with 8u x86_64 fastdebug build.  Also passed two round of jcstress test with 8u aarch64 fastdebug build.

Thanks for your help,


More information about the jdk8u-dev mailing list