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

JSR292: deadlock during class loading of MethodHandles, MethodHandleImpl & MethodHandleNatives

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P3 P3
    • 8
    • 8
    • core-libs
    • b107
    • Not verified

        Intermittent deadlock during class loading of MethodHandles, MethodHandleImpl & MethodHandleNatives.

        Stack trace:
        "Worker #4/5" #11 prio=5 os_prio=31 tid=0x00007fb9dbad4000 nid=0x6303 in Object.wait() [0x000000019ac6a000]
           java.lang.Thread.State: RUNNABLE
        at java.lang.invoke.MethodHandleNatives.<clinit>(MethodHandleNatives.java:80)
        at Test1_I_S_m.test(Unknown Source)
               ...

        "Worker #3/5" #10 prio=5 os_prio=31 tid=0x00007fb9dc156800 nid=0x6103 in Object.wait() [0x000000019ab67000]
           java.lang.Thread.State: RUNNABLE
        at java.lang.invoke.MemberName.<init>(MemberName.java:482)
        at java.lang.invoke.MemberName.<init>(MemberName.java:476)
        at java.lang.invoke.LambdaForm$NamedFunction.<init>(LambdaForm.java:991)
        at java.lang.invoke.MethodHandleImpl.<clinit>(MethodHandleImpl.java:487)
        at java.lang.invoke.MethodHandles.<clinit>(MethodHandles.java:60)
                ...

        jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java:
            75 static {
           ...
            79 // The JVM calls MethodHandleNatives.<clinit>. Cascade the <clinit> calls as needed:
            80 MethodHandleImpl.initStatics();
            81 }

        jdk/src/share/classes/java/lang/invoke/MemberName.java:
           481 public MemberName(Method m, boolean wantSpecial) {
           482 m.getClass(); // NPE check
           483 // fill in vmtarget, vmindex while we have m in hand:
           484 MethodHandleNatives.init(this, m);

              vlivanov Vladimir Ivanov
              vlivanov Vladimir Ivanov
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: