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

Regression: deadlock when changing display mode or entering full screen mode

    Details

    • Subcomponent:
      2d
    • Introduced In Version:
      6
    • Resolved In Build:
      b67
    • CPU:
      x86
    • OS:
      windows_xp

      Description

      When running the following regression tests on the latest mustang builds
        test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java
        test/java/awt/FullScreen/CauseDoDrawOvalDump/
      it's easy to run into the following deadlock (when changing the display
      mode or doing Alt+Tab):

      Found one Java-level deadlock:
      =============================
      "AWT-EventQueue-0":
        waiting to lock monitor 0x0aab507c (object 0x02e1b1f0, a sun.awt.Win32GraphicsDevice),
        which is held by "main"
      "main":
        waiting to lock monitor 0x0aab5014 (object 0x02e709e0, a sun.awt.windows.WFramePeer),
        which is held by "AWT-EventQueue-0"

      Java stack information for the threads listed above:
      ===================================================
      "AWT-EventQueue-0":
              at java.awt.GraphicsDevice.getFullScreenWindow(GraphicsDevice.java:252)
              - waiting to lock <0x02e1b1f0> (a sun.awt.Win32GraphicsDevice)
              at sun.awt.Win32GraphicsDevice.isD3DEnabledOnDevice(Win32GraphicsDevice.java:282)
              at sun.java2d.d3d.D3DBackBufferSurfaceData.createData(D3DBackBufferSurfaceData.java:58)
              at sun.java2d.windows.WinBackBuffer$WinBackBufferSurfaceManager.createAccelSurface(WinBackBuffer.java:59)
              at sun.java2d.windows.WinBackBuffer$WinBackBufferSurfaceManager.createAccelSurface(WinBackBuffer.java:45)
              at sun.java2d.windows.WinVolatileSurfaceManager.initAcceleratedSurface(WinVolatileSurfaceManager.java:115)
              at sun.awt.image.VolatileSurfaceManager.initialize(VolatileSurfaceManager.java:97)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:66)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:76)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:87)
              at sun.java2d.windows.WinBackBuffer.<init>(WinBackBuffer.java:28)
              at sun.awt.Win32GraphicsConfig.createBackBuffer(Win32GraphicsConfig.java:358)
              at sun.awt.windows.WComponentPeer.replaceSurfaceData(WComponentPeer.java:380)
              - locked <0x02e709e0> (a sun.awt.windows.WFramePeer)
              - locked <0x02e3f658> (a java.awt.Component$AWTTreeLock)
              at sun.awt.windows.WComponentPeer.replaceSurfaceData(WComponentPeer.java:346)
              at sun.awt.windows.WComponentPeer$2.run(WComponentPeer.java:394)
              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)
      "main":
              at sun.awt.Win32GraphicsDevice.setFullScreenWindow(Win32GraphicsDevice.java:356)
              - waiting to lock <0x02e709e0> (a sun.awt.windows.WFramePeer)
              - locked <0x02e1b1f0> (a sun.awt.Win32GraphicsDevice)
              at CauseDoDrawOvalDump.<init>(CauseDoDrawOvalDump.java:61)
              at CauseDoDrawOvalDump.main(CauseDoDrawOvalDump.java:27)

      Found 1 deadlock.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                tdv Dmitri Trembovetski (Inactive)
                Reporter:
                tdv Dmitri Trembovetski (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: