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

[lworld] InlineOops fails with DeoptimizeALot/SafepointALot/DeoptimizeNMethodBarriersALot

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not an Issue
    • Icon: P3 P3
    • repo-valhalla
    • repo-valhalla
    • hotspot

      Running the InlineOops test with combinations of -XX:+SafepointALot -XX:+DeoptimizeALot -XX:+DeoptimizeNMethodBarriersALot fails in various ways:

      # Internal Error (/oracle/valhalla/open/src/hotspot/cpu/x86/macroAssembler_x86.cpp:876), pid=419025, tid=419048
      # fatal error: DEBUG MESSAGE: Verify oop store failed

      Stack: [0x00007f4cb1eff000,0x00007f4cb2000000], sp=0x00007f4cb1ffdf90, free space=1019k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x1411380] MacroAssembler::debug64(char*, long, long*)+0x40
      v ~BufferBlob::I2C/C2I adapters
      j runtime.valhalla.inlinetypes.InlineOops.main([Ljava/lang/String;)V+17
      v ~StubRoutines::call_stub
      V [libjvm.so+0xed9d19] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x4e9
      V [libjvm.so+0x1766b25] invoke(InstanceKlass*, methodHandle const&, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*) [clone .constprop.0]+0xee5
      V [libjvm.so+0x1767d27] Reflection::invoke_method(oop, Handle, objArrayHandle, Thread*)+0x237
      V [libjvm.so+0x10a46e5] JVM_InvokeMethod+0x305
      J 2290 jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base (0 bytes) @ 0x00007f4ed8bcd528 [0x00007f4ed8bcd400+0x0000000000000128]
      J 2289 c2 jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base (150 bytes) @ 0x00007f4ed8bccb3c [0x00007f4ed8bcca40+0x00000000000000fc]
      J 2287 c2 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base (10 bytes) @ 0x00007f4ed8bcc6a4 [0x00007f4ed8bcc640+0x0000000000000064]
      j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+59 java.base
      j com.sun.javatest.regtest.agent.MainWrapper$MainThread.run()V+172
      J 4417 c1 java.lang.Thread.run()V java.base (17 bytes) @ 0x00007f4ed1850a74 [0x00007f4ed18509e0+0x0000000000000094]
      v ~StubRoutines::call_stub
      V [libjvm.so+0xed9d19] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x4e9
      V [libjvm.so+0xedaba5] JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, Thread*)+0x4c5
      V [libjvm.so+0xedb04c] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*)+0xac
      V [libjvm.so+0x1082b4b] thread_entry(JavaThread*, Thread*)+0x12b
      V [libjvm.so+0x198e706] JavaThread::thread_main_inner()+0x256
      V [libjvm.so+0x1995080] Thread::call_run()+0x100
      V [libjvm.so+0x164f996] thread_native_entry(Thread*)+0x116


      java.lang.RuntimeException: Invalid field firstName: expected true, was false
      at jdk.test.lib.Asserts.fail(Asserts.java:594)
      at jdk.test.lib.Asserts.assertTrue(Asserts.java:486)
      at runtime.valhalla.inlinetypes.InlineOops.validatePerson(InlineOops.java:540)
      at runtime.valhalla.inlinetypes.InlineOops.validateIndexedPerson(InlineOops.java:554)
      at runtime.valhalla.inlinetypes.InlineOops.testValues(InlineOops.java:238)
      at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1434)
      at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:295)
      at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
      at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
      at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
      at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
      java.lang.NullPointerException: There cannot be a NullPointerException at bci 19 of method void runtime.valhalla.inlinetypes.InlineOops.testValues()
      at runtime.valhalla.inlinetypes.InlineOops.testValues(InlineOops.java:235)
      at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1434)
      at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:295)
      at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
      at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
      at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
      at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


      java.lang.RuntimeException: testOverGc
      at jdk.test.lib.Asserts.fail(Asserts.java:617)
      at runtime.valhalla.inlinetypes.InlineOops.testOverGc(InlineOops.java:433)
      at runtime.valhalla.inlinetypes.InlineOops.main(InlineOops.java:186)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.base/java.lang.reflect.Method.invoke(Method.java:568)
      at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
      at java.base/java.lang.Thread.run(Thread.java:831)
      Caused by: java.lang.RuntimeException: assertTrue: expected true, was false
      at jdk.test.lib.Asserts.fail(Asserts.java:594)
      at jdk.test.lib.Asserts.assertTrue(Asserts.java:486)
      at jdk.test.lib.Asserts.assertTrue(Asserts.java:472)
      at runtime.valhalla.inlinetypes.InlineOops.validatePerson(InlineOops.java:538)
      at runtime.valhalla.inlinetypes.InlineOops.validateIndexedPerson(InlineOops.java:554)
      at runtime.valhalla.inlinetypes.InlineOops.testOverGc(InlineOops.java:428)
      ... 7 more


      Might be related to JDK-8235387 and/or JDK-8241894.

            thartmann Tobias Hartmann
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: