JDK-6921601 : Deadlock: sun.font.FontManager.findFont2D
  • Type: Bug
  • Component: client-libs
  • Sub-Component: 2d
  • Affected Version: 6u10
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: linux
  • CPU: x86
  • Submitted: 2010-02-01
  • Updated: 2010-04-04
  • Resolved: 2010-02-01
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
Java HotSpot(TM) Client VM version 16.0-b13

ADDITIONAL OS VERSION INFORMATION :
Linux linux 2.6.13-15.13-default #1 Tue Nov 28 13:43:50 UTC 2006 x86_64 x86_64 x86_64 GNU/Linux

EXTRA RELEVANT SYSTEM CONFIGURATION :
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 31
model name      : AMD Athlon(tm) 64 Processor 3000+
stepping        : 0
cpu MHz         : 1004.910
cache size      : 512 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow lahf_lm
bogomips        : 2011.94
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

NVIDIA GeForce 6600 GT with driver 169.12
X.Org 6.8.2

A DESCRIPTION OF THE PROBLEM :
Deadlock: AWT-EventQueue-0 - javawsApplicationMain

----
Name: AWT-EventQueue-0
State: BLOCKED on java.lang.String@39ea58 owned by: javawsApplicationMain
  Total blocked: 11  Total waited: 6

Stack trace:
sun.java2d.SunGraphicsEnvironment.loadFonts(SunGraphicsEnvironment.java:419)
sun.font.FontManager.findFont2D(FontManager.java:2125)
java.awt.Font.getFont2D(Font.java:455)
java.awt.Font.getNumGlyphs(Font.java:1699)
com.sun.opengl.util.j2d.TextRenderer.<init>(TextRenderer.java:301)
gov.nasa.worldwind.util.OGLTextRenderer.<init>(Unknown Source)
gov.nasa.worldwind.util.OGLTextRenderer.getOrCreateTextRenderer(Unknown Source)
gov.nasa.worldwind.util.OGLTextRenderer.getOrCreateTextRenderer(Unknown Source)
gov.nasa.worldwind.layers.ScalebarLayer.drawLabel(Unknown Source)
gov.nasa.worldwind.layers.ScalebarLayer.draw(Unknown Source)
gov.nasa.worldwind.layers.ScalebarLayer$OrderedIcon.render(Unknown Source)
gov.nasa.worldwind.AbstractSceneController.draw(Unknown Source)
gov.nasa.worldwind.BasicSceneController.doRepaint(Unknown Source)
gov.nasa.worldwind.AbstractSceneController.repaint(Unknown Source)
gov.nasa.worldwind.WorldWindowGLAutoDrawable.doDisplay(Unknown Source)
gov.nasa.worldwind.WorldWindowGLAutoDrawable.display(Unknown Source)
com.sun.opengl.impl.GLDrawableHelper.display(GLDrawableHelper.java:78)
javax.media.opengl.GLCanvas$DisplayAction.run(GLCanvas.java:435)
com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:194)
javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:412)
javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
javax.media.opengl.GLCanvas.paint(GLCanvas.java:277)
javax.media.opengl.GLCanvas.update(GLCanvas.java:354)
sun.awt.RepaintArea.updateComponent(RepaintArea.java:239)
sun.awt.X11.XRepaintArea.updateComponent(XRepaintArea.java:43)
sun.awt.RepaintArea.paint(RepaintArea.java:216)
sun.awt.X11.XComponentPeer.handleEvent(XComponentPeer.java:695)
java.awt.Component.dispatchEventImpl(Component.java:4706)
java.awt.Component.dispatchEvent(Component.java:4460)
java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

----
Name: javawsApplicationMain
State: WAITING on java.util.concurrent.locks.ReentrantLock$NonfairSync@e8c7db owned by: AWT-EventQueue-0
  Total blocked: 2  Total waited: 3

Stack trace:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1114)
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262)
sun.awt.SunToolkit.awtLock(SunToolkit.java:236)
sun.font.FontManager.getFontPath(Native Method)
   - locked java.lang.Class@18fa85
sun.java2d.SunGraphicsEnvironment.getPlatformFontPath(SunGraphicsEnvironment.java:385)
sun.java2d.SunGraphicsEnvironment$3.run(SunGraphicsEnvironment.java:429)
java.security.AccessController.doPrivileged(Native Method)
sun.java2d.SunGraphicsEnvironment.loadFonts(SunGraphicsEnvironment.java:425)
   - locked java.lang.String@39ea58
sun.font.FontManager.findFont2D(FontManager.java:2125)
sun.font.FontManager.findFont2D(FontManager.java:1985)
java.awt.Font.getFont2D(Font.java:455)
java.awt.Font.getNumGlyphs(Font.java:1699)
com.sun.opengl.util.j2d.TextRenderer.<init>(TextRenderer.java:301)
com.sun.opengl.util.j2d.TextRenderer.<init>(TextRenderer.java:244)
gov.nasa.worldwind.render.SurfaceText.getTextRenderer(Unknown Source)
gov.nasa.worldwind.render.SurfaceText.updateTextBounds(Unknown Source)
gov.nasa.worldwind.render.SurfaceText.setText(Unknown Source)
gov.nasa.worldwind.render.SurfaceText.<init>(Unknown Source)
gov.nasa.worldwind.examples.SurfaceObjects$AppFrame.buildShapesLayer(Unknown Source)
gov.nasa.worldwind.examples.SurfaceObjects$AppFrame.<init>(Unknown Source)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
java.lang.reflect.Constructor.newInstance(Constructor.java:513)
java.lang.Class.newInstance0(Class.java:355)
java.lang.Class.newInstance(Class.java:308)
gov.nasa.worldwind.examples.ApplicationTemplate.start(Unknown Source)
gov.nasa.worldwind.examples.SurfaceObjects.main(Unknown Source)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
com.sun.javaws.Launcher.executeApplication(Launcher.java:1748)
com.sun.javaws.Launcher.executeMainClass(Launcher.java:1694)
com.sun.javaws.Launcher.doLaunchApp(Launcher.java:1480)
com.sun.javaws.Launcher.run(Launcher.java:130)
java.lang.Thread.run(Thread.java:619)


STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run World Wind for Java demo application (moving shapes)


REPRODUCIBILITY :
This bug can be reproduced occasionally.