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

Concurrent execution of Dialog.addComponentListener() and Dialog.setResizable() deadlocks

XMLWordPrintable

    • 5.0
    • b79
    • x86
    • linux

      This bug is reproducible rarely on mustang starting (at least) from b49.
      Deadlock is possible when invoking setResizable().
      Here are fragments of stack dump:

      "AWT-EventQueue-0" prio=10 tid=0x08303000 nid=0x1cc8 waiting for monitor entry [0x4f04f000..0x4f050120]
         java.lang.Thread.State: BLOCKED (on object monitor)
              at java.awt.Component.addComponentListener(Component.java:4689)
              - waiting to lock <0x422faab0> (a MyDialog)
              at sun.awt.im.InputContext.addClientWindowListeners(InputContext.java:944)
              - locked <0x423322f8> (a sun.awt.im.InputMethodContext)
              at sun.awt.im.InputContext.activateInputMethod(InputContext.java:374)
              at sun.awt.im.InputContext.focusGained(InputContext.java:319)
              - locked <0x423322f8> (a sun.awt.im.InputMethodContext)
              - locked <0x42cad6a0> (a java.awt.Component$AWTTreeLock)
              at sun.awt.im.InputContext.dispatchEvent(InputContext.java:226)
              at sun.awt.im.InputMethodContext.dispatchEvent(InputMethodContext.java:180)
              at java.awt.Component.dispatchEventImpl(Component.java:4299)
              at java.awt.Component.dispatchEvent(Component.java:4195)
              at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1828)
              at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:861)
              at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:501)
              at java.awt.Component.dispatchEventImpl(Component.java:4237)
              at java.awt.Component.dispatchEvent(Component.java:4195)
              at sun.awt.X11.XWindow$1.run(XWindow.java:352)
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
              at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
              at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

      "AppletThread" prio=10 tid=0x4e737600 nid=0x1cc4 waiting for monitor entry [0x4ea02000..0x4ea02f20]
         java.lang.Thread.State: BLOCKED (on object monitor)
              at java.awt.Component.invalidate(Component.java:2587)
              - waiting to lock <0x42cad6a0> (a java.awt.Component$AWTTreeLock)
              at java.awt.Container.invalidate(Container.java:1413)
              at sun.awt.X11.XDecoratedPeer.setResizable(XDecoratedPeer.java:874)
              at java.awt.Dialog.setResizable(Dialog.java:1272)
              - locked <0x422faab0> (a MyDialog)
              at DialogResizeTest.start(DialogResizeTest.java:48)
              at com.sun.javatest.regtest.AppletWrapper$AppletThread.run(AppletWrapper.java:134)
              at java.lang.Thread.run(Thread.java:620)

      Found one Java-level deadlock:
      =============================
      "AWT-EventQueue-0":
        waiting to lock monitor 0x080aba70 (object 0x422faab0, a MyDialog),
        which is held by "AppletThread"
      "AppletThread":
        waiting to lock monitor 0x080ab87c (object 0x42cad6a0, a java.awt.Component$AWTTreeLock),
        which is held by "AWT-EventQueue-0"

            dcherepanov Dmitry Cherepanov
            vbaranovsunw Vyacheslav Baranov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: