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

Java2Demo hangs with xrender=True in OEL5.5 using jdk7 b103 in the linux

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2
    • Resolution: Cannot Reproduce
    • Affects Version/s: 7
    • Fix Version/s: 7
    • Component/s: client-libs
    • Labels:
    • Subcomponent:
      2d
    • CPU:
      x86
    • OS:
      linux

      Description

      When launch Java2Demo in the linux machine with -Dsun.java2d.xrender=True option, it hangs, the hang can be reproducible as always, if you resize the demo, it hangs right way.

      Java Version: 1.7.0-ea-b103
      System info:
      host name:jfcsqe-solar.sfbay.sun.com
      Linux jfcsqe-solar 2.6.18-194.8.1.0.1.el5 #1 SMP Thu Jul 1 17:09:06 EDT 2010
      i686 i686 i386 GNU/Linux
      Red Hat Enterprise Linux Server release 5.5 (Tikanga)

      How to produce the problem:
      1, login to this machine
      2, cd /export/jdk/jdk1.7.0 (b103 installed)
      3, bin/java -jar -Dsun.java2d.xrender=True demo/jfc/Java2D/*.jar
      4, click auto run, it will hang in clip or other.
      5, please see attached screen shot and the trace info
      #0 Fri Aug 06 13:19:39 PDT 2010, 7648.828K used
      2010-08-06 13:25:50
      Full thread dump Java HotSpot(TM) Server VM (19.0-b04 mixed mode):
      "TextureAnim Demo" prio=10 tid=0x096b0c00 nid=0xae7 waiting on condition
      [0x04a34000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.AnimatingSurface.run(AnimatingSurface.java:89)
              at java.lang.Thread.run(Thread.java:717)

      "GradAnim Demo" prio=10 tid=0x096aac00 nid=0xae6 waiting on condition
      [0x017bf000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.AnimatingSurface.run(AnimatingSurface.java:89)
              at java.lang.Thread.run(Thread.java:717)

      "PerformanceMonitor" prio=10 tid=0x09728c00 nid=0xac0 waiting on condition
      [0x06f7f000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.PerformanceMonitor$Surface.run(PerformanceMonitor.java:187)
              at java.lang.Thread.run(Thread.java:717)

      "MemoryMonitor" prio=10 tid=0x098a3800 nid=0xabf sleeping[0x05606000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.MemoryMonitor$Surface.run(MemoryMonitor.java:302)
              at java.lang.Thread.run(Thread.java:717)

      "RunWindow" prio=10 tid=0x098e4800 nid=0xab5 in Object.wait() [0x01ac7000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0xaa5f9c08> (a java.awt.EventQueue$1AWTInvocationLock)
              at java.lang.Object.wait(Object.java:502)
              at java.awt.EventQueue.invokeAndWait(EventQueue.java:1156)
              - locked <0xaa5f9c08> (a java.awt.EventQueue$1AWTInvocationLock)
              at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1346)
              at java2d.RunWindow.invokeAndWait(RunWindow.java:321)
              at java2d.RunWindow.run(RunWindow.java:236)
              at java.lang.Thread.run(Thread.java:717)

      "TimerQueue" daemon prio=10 tid=0x098a5400 nid=0xab4 waiting on condition
      [0x084f6000]
         java.lang.Thread.State: WAITING (parking)
              at sun.misc.Unsafe.park(Native Method)
              - parking to wait for <0x95777f18> (a
                java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
              at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
              at
      java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
              at java.util.concurrent.DelayQueue.take(DelayQueue.java:209)
              at javax.swing.TimerQueue.run(TimerQueue.java:171)
              at java.lang.Thread.run(Thread.java:717)

      "DestroyJavaVM" prio=10 tid=0x09609400 nid=0xaa1 waiting on condition
      [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "AWT-EventQueue-0" prio=10 tid=0x90dcfc00 nid=0xaaf runnable [0x05dfe000]
         java.lang.Thread.State: RUNNABLE
              at sun.java2d.loops.Blit.Blit(Native Method)
              at
      sun.java2d.xr.XRPMBlitLoops.cacheToTmpSurface(XRPMBlitLoops.java:146)
              at sun.java2d.xr.XrSwToPMBlit.Blit(XRPMBlitLoops.java:347)
              at
      sun.java2d.SurfaceDataProxy.updateSurfaceData(SurfaceDataProxy.java:498)
              at sun.java2d.SurfaceDataProxy.replaceData(SurfaceDataProxy.java:455)
              at sun.java2d.SurfaceData.getSourceSurfaceData(SurfaceData.java:228)
              at sun.java2d.pipe.DrawImage.renderImageCopy(DrawImage.java:563)
              at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:71)
              at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:1008)
              at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:3062)
              at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:3047)
              at
      java2d.PerformanceMonitor$Surface.paint(PerformanceMonitor.java:102)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paint(JComponent.java:1063)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
              at javax.swing.JComponent.paintChildren(JComponent.java:887)
              - locked <0x9557dba0> (a java.awt.Component$AWTTreeLock)
              at javax.swing.JComponent.paintToOffscreen(JComponent.java:5201)
              at
      javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:295)
              at javax.swing.RepaintManager.paint(RepaintManager.java:1206)
              at javax.swing.JComponent.paint(JComponent.java:1040)
              at
      java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39)
              at
      sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78)
              at
      sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115)
              at java.awt.Container.paint(Container.java:1942)
              at java.awt.Window.paint(Window.java:3780)
              at
      javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:781)
              at
      javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728)
              at
      javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677)
              at javax.swing.RepaintManager.access$700(RepaintManager.java:59)
              at
      javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1621)
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:660)
              at
      java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:209)
              at
      java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
              at
      java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:118)
              at
      java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
              at
      java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

      "AWT-Shutdown" prio=10 tid=0x90da1c00 nid=0xaae in Object.wait() [0x051ff000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0x956a4138> (a java.lang.Object)
              at java.lang.Object.wait(Object.java:502)
              at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:287)
              - locked <0x956a4138> (a java.lang.Object)
              at java.lang.Thread.run(Thread.java:717)

      "AWT-XAWT" daemon prio=10 tid=0x90d84800 nid=0xaad waiting on condition
      [0x00bbc000]
         java.lang.Thread.State: WAITING (parking)
              at sun.misc.Unsafe.park(Native Method)
              - parking to wait for <0x95384d58> (a
                java.util.concurrent.locks.ReentrantLock$NonfairSync)
              at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
              at
      java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
              at
      java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
              at
      java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
              at
      java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:214)
              at
      java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
              at sun.awt.SunToolkit.awtLock(SunToolkit.java:274)
              at sun.awt.X11.XToolkit.waitForEvents(Native Method)
              at sun.awt.X11.XToolkit.run(XToolkit.java:625)
              at sun.awt.X11.XToolkit.run(XToolkit.java:589)
              at java.lang.Thread.run(Thread.java:717)

      "Java2D Disposer" daemon prio=10 tid=0x90d6bc00 nid=0xaac in Object.wait()
      [0x0093a000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0x956697e8> (a java.lang.ref.ReferenceQueue$Lock)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
              - locked <0x956697e8> (a java.lang.ref.ReferenceQueue$Lock)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
              at sun.java2d.Disposer.run(Disposer.java:145)
              at java.lang.Thread.run(Thread.java:717)

      "Low Memory Detector" daemon prio=10 tid=0x90d14000 nid=0xaaa runnable
      [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "CompilerThread1" daemon prio=10 tid=0x90d12400 nid=0xaa9 waiting on condition
      [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "CompilerThread0" daemon prio=10 tid=0x90d10400 nid=0xaa8 waiting on condition
      [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" daemon prio=10 tid=0x90d0e800 nid=0xaa7 runnable
      [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" daemon prio=10 tid=0x09689400 nid=0xaa6 in Object.wait()
      [0x003fc000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0x956b4080> (a java.lang.ref.ReferenceQueue$Lock)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
              - locked <0x956b4080> (a java.lang.ref.ReferenceQueue$Lock)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
              at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:177)

      "Reference Handler" daemon prio=10 tid=0x09687c00 nid=0xaa5 in Object.wait()
      [0x00399000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0x957666b8> (a java.lang.ref.Reference$Lock)
              at java.lang.Object.wait(Object.java:502)
              at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
              - locked <0x957666b8> (a java.lang.ref.Reference$Lock)

      "VM Thread" prio=10 tid=0x09685000 nid=0xaa4 runnable

      "GC task thread#0 (ParallelGC)" prio=10 tid=0x09610400 nid=0xaa2 runnable

      "GC task thread#1 (ParallelGC)" prio=10 tid=0x09611800 nid=0xaa3 runnable

      "VM Periodic Task Thread" prio=10 tid=0x90d16000 nid=0xaab waiting on
      condition

      JNI global references: 2692

      Heap
       PSYoungGen total 14720K, used 2935K [0xaa4e0000, 0xab900000, 0xb4e30000)
        eden space 14336K, 20% used [0xaa4e0000,0xaa7bdc80,0xab2e0000)
        from space 384K, 0% used [0xab2e0000,0xab2e0000,0xab340000)
        to space 3136K, 0% used [0xab5f0000,0xab5f0000,0xab900000)
       PSOldGen total 21632K, used 7437K [0x95230000, 0x96750000, 0xaa4e0000)
        object space 21632K, 34% used [0x95230000,0x95973488,0x96750000)
       PSPermGen total 18688K, used 13172K [0x91230000, 0x92470000,
      0x95230000)
        object space 18688K, 70% used [0x91230000,0x91f0d2f0,0x92470000)


      [dtftest@jfcsqe-solar jdk1.7.0]$ bin/java -jar -Dsun.java2d.xrender=True demo/jfc/Java2D/*.jar
      XRender pipeline enabled
      Xrender: INFO: Jules library not installed.

      Java2D Demo RunWindow : 20 Runs, 10 second delay between tabs
      java version: 1.7.0-ea
      Linux 2.6.18-194.8.1.0.1.el5

      #0 Fri Aug 06 13:19:39 PDT 2010, 7648.828K used
      2010-08-06 13:25:50
      Full thread dump Java HotSpot(TM) Server VM (19.0-b04 mixed mode):

      "TextureAnim Demo" prio=10 tid=0x096b0c00 nid=0xae7 waiting on condition [0x04a34000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.AnimatingSurface.run(AnimatingSurface.java:89)
              at java.lang.Thread.run(Thread.java:717)

      "GradAnim Demo" prio=10 tid=0x096aac00 nid=0xae6 waiting on condition [0x017bf000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.AnimatingSurface.run(AnimatingSurface.java:89)
              at java.lang.Thread.run(Thread.java:717)

      "PerformanceMonitor" prio=10 tid=0x09728c00 nid=0xac0 waiting on condition [0x06f7f000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.PerformanceMonitor$Surface.run(PerformanceMonitor.java:187)
              at java.lang.Thread.run(Thread.java:717)

      "MemoryMonitor" prio=10 tid=0x098a3800 nid=0xabf sleeping[0x05606000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
              at java.lang.Thread.sleep(Native Method)
              at java2d.MemoryMonitor$Surface.run(MemoryMonitor.java:302)
              at java.lang.Thread.run(Thread.java:717)

      "RunWindow" prio=10 tid=0x098e4800 nid=0xab5 in Object.wait() [0x01ac7000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              - waiting on <0xaa5f9c08> (a java.awt.EventQueue$1AWTInvocationLock)
              at java.lang.Object.wait(Object.java:502)
              at java.awt.EventQueue.invokeAndWait(EventQueue.java:1156)
              - locked <0xaa5f9c08> (a java.awt.EventQueue$1AWTInvocationLock)
              at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1346)
              at java2d.RunWindow.invokeAndWait(RunWindow.java:321)
              at java2d.RunWindow.run(RunWindow.java:236)
              at java.lang.Thread.run(Thread.java:717)

      "TimerQueue" daemon prio=10 tid=0x098a5400 nid=0xab4 waiting on condition [0x084f6000]
         java.lang.Thread.State: WAITING (parking)
              at sun.misc.Unsafe.park(Native Method)
              - parking to wait for <0x95777f18> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
              at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
              at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
              at java.util.concurrent.DelayQueue.take(DelayQueue.java:209)
              at javax.swing.TimerQueue.run(TimerQueue.java:171)
              at java.lang.Thread.run(Thread.java:717)

      "DestroyJavaVM" prio=10 tid=0x09609400 nid=0xaa1 waiting on condition [0x00000000]
         java.lang.Thread.State: RUNNABLE

      "AWT-EventQueue-0" prio=10 tid=0x90dcfc00 nid=0xaaf runnable [0x05dfe000]
         java.lang.Thread.State: RUNNABLE
              at sun.java2d.loops.Blit.Blit(Native Method)
              at sun.java2d.xr.XRPMBlitLoops.cacheToTmpSurface(XRPMBlitLoops.java:146)
              at sun.java2d.xr.XrSwToPMBlit.Blit(XRPMBlitLoops.java:347)
              at sun.java2d.SurfaceDataProxy.updateSurfaceData(SurfaceDataProxy.java:498)
              at sun.java2d.SurfaceDataProxy.replaceData(SurfaceDataProxy.java:455)
              at sun.java2d.SurfaceData.getSourceSurfaceData(SurfaceData.java:228)
              at sun.java2d.pipe.DrawImage.renderImageCopy(DrawImage.java:563)
              at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:71)
              at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:3062)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                prr Philip Race
                Reporter:
                ttzhang Tao Zhang
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: