Duplicate :
|
|
Relates :
|
|
Relates :
|
The FreeMind Java mind mapping application can hang the X server when run on screen 1 (eg :0.1). It works fine on screen 0 (eg :0.0). The mouse still moves but all actions such as key presses and button clicks are ignored. The solution is log in remotely and kill the JVM (using SIGKILL, since SIGTERM isn't enough) The problem is easily reproduced, download and run FreeMind: <http://freemind.sourceforge.net/> Then: 1. Create a simple mind map 2. Drag one of the nodes to another node 3. FreeMind and the X server hang It's 100% reproducible for me running either Java 1.5.0-b64 or Java 1.5.0_01-b08 on JDS3 or CDE on Solaris 10 on Sun Ray or local desktop. The relevant Java thread looks like this: ff33d1c4 pollsys (b1a7e040, 1, 0, 0) ff2df934 pselect (b1a7e040, ff367a84, ff367a84, 40, 0, 0) + 1c8 ff2dfc78 select (25, b1a7e238, 0, 0, 0, 0) + 6c b1f9d1b0 _XWaitForReadable (12a8640, 10, 4, b1a7e238, 1, 0) + dc b1f9cfe0 _XRead (ffffffff, b1a7e45c, 8, 12a8640, 20, 8) + ec b1f9a55c XOpenDisplay (62c2b8, b1fd30f8, 0, b1a7e448, 12a8640, 0) + 534 fa8cb634 ???????? (5, 1, 254e0, 3a, fa8f0ae0, 4) + 4893160c fa8cb728 ???????? (2a59b0, d196d4, f3, d196dc, 18, 0) + 48931700 fa8cb768 ???????? (2a59b0, 24, 2538c, 363338, fa8f0ae0, 0) + 48931740 fa8cbcd8 ???????? (2a59b0, 400d48, d, 34, d196c8, fa8f3801) + 48931cb0 fa8cee94 Java_sun_awt_motif_X11DragSourceContextPeer_startDrag (8d0d50, fa8f564c, 40000003, d, fa8f5a80, fa8f0ae0) + 480 f880c280 * sun/awt/motif/X11DragSourceContextPeer.startDrag(Ljava/awt/Component;Lsun/awt/motif/MWindowPeer;Ljava/awt/datatransfer/Transferable;Ljava/awt/event/InputEvent;Ljava/awt/Cursor;II[JLjava/util/Map;)J+-25636 f880c224 * sun/awt/motif/X11DragSourceContextPeer.startDrag(Ljava/awt/Component;Lsun/awt/motif/MWindowPeer;Ljava/awt/datatransfer/Transferable;Ljava/awt/event/InputEvent;Ljava/awt/Cursor;II[JLjava/util/Map;)J+0 f88058fc * sun/awt/motif/X11DragSourceContextPeer.startDrag(Ljava/awt/datatransfer/Transferable;[JLjava/util/Map;)V+119 (line 74) f8805764 * sun/awt/dnd/SunDragSourceContextPeer.startDrag(Ljava/awt/dnd/DragSourceContext;Ljava/awt/Cursor;Ljava/awt/Image;Ljava/awt/Point;)V+91 (line 111) f8805c2c * java/awt/dnd/DragSource.startDrag(Ljava/awt/dnd/DragGestureEvent;Ljava/awt/Cursor;Ljava/awt/Image;Ljava/awt/Point;Ljava/awt/datatransfer/Transferable;Ljava/awt/dnd/DragSourceListener;Ljava/awt/datatransfer/FlavorMap;)V+66 (line 306) f8805764 * java/awt/dnd/DragSource.startDrag(Ljava/awt/dnd/DragGestureEvent;Ljava/awt/Cursor;Ljava/awt/datatransfer/Transferable;Ljava/awt/dnd/DragSourceListener;)V+9 (line 403) f8805764 * java/awt/dnd/DragGestureEvent.startDrag(Ljava/awt/Cursor;Ljava/awt/datatransfer/Transferable;Ljava/awt/dnd/DragSourceListener;)V+8 (line 223) f8805764 * freemind/controller/NodeDragListener.dragGestureRecognized(Ljava/awt/dnd/DragGestureEvent;)V+137 (line 82) f8805c2c * java/awt/dnd/DragGestureRecognizer.fireDragGestureRecognized(ILjava/awt/Point;)V+25 (line 339) f8805764 * sun/awt/motif/MMouseDragGestureRecognizer.mouseDragged(Ljava/awt/event/MouseEvent;)V+105 (line 202) f8805c2c * java/awt/AWTEventMulticaster.mouseDragged(Ljava/awt/event/MouseEvent;)V+21 (line 262) f8805c2c * java/awt/Component.processMouseMotionEvent(Ljava/awt/event/MouseEvent;)V+52 (line 5536) f8805764 * javax/swing/JComponent.processMouseMotionEvent(Ljava/awt/event/MouseEvent;)V+42 (line 3111) f8805764 * java/awt/Component.processEvent(Ljava/awt/AWTEvent;)V+92 (line 5257) f8805764 * java/awt/Container.processEvent(Ljava/awt/AWTEvent;)V+18 (line 1966) f8859400 * C2IAdapter f892bc80 * *java/awt/Component.dispatchEventImpl(Ljava/awt/AWTEvent;)V+477 (line 3955) f884e57c * java/lang/reflect/Field.setBoolean(Ljava/lang/Object;Z)V+12 (line 686) f8805764 * java/awt/Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V+42 (line 2024) f8859400 * C2IAdapter f88dfdcc * *java/awt/Component.dispatchEvent(Ljava/awt/AWTEvent;)V+2 (line 3803) f88dfdcc * *java/awt/LightweightDispatcher.retargetMouseEvent(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V+304 (line 4212) f88a2c44 * java/awt/LightweightDispatcher.isMouseGrab(Ljava/awt/event/MouseEvent;)Z+93 (line 3856) f8805764 * java/awt/LightweightDispatcher.processMouseEvent(Ljava/awt/event/MouseEvent;)Z+191 (line 3909) f88057a8 * java/awt/LightweightDispatcher.dispatchEvent(Ljava/awt/AWTEvent;)Z+50 (line 3822) f88057a8 * java/awt/Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V+12 (line 2010) f8805764 * java/awt/Window.dispatchEventImpl(Ljava/awt/AWTEvent;)V+19 (line 1766) f8805764 * java/awt/Component.dispatchEvent(Ljava/awt/AWTEvent;)V+2 (line 3803) f8805764 * java/awt/EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V+46 (line 463) f8805764 * java/awt/EventDispatchThread.pumpOneEventForHierarchy(ILjava/awt/Component;)Z+200 (line 234) f88057a8 * java/awt/EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+26 (line 163) f8805764 * java/awt/EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4 (line 157) f8805764 * java/awt/EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3 (line 149) f8805764 * java/awt/EventDispatchThread.run()V+9 (line 110) f8800218 * StubRoutines (1) fe98d978 void JavaCalls::call_helper(JavaValue*,methodHandle*,JavaCallArguments*,Thread*) (1, 8d0c98, b1a7faa0, b1a7f9a0, 1, f88001c0) + 528 feaacdec void JavaCalls::call_virtual(JavaValue*,Handle,KlassHandle,symbolHandle,symbolHandle,Thread*) (7074, 8d0c98, 3bf410, 3bf41c, 3bf418, e517b328) + 188 feaca754 void thread_entry(JavaThread*,Thread*) (b402eea0, 8d0c98, 3bf7fc, fef531b8, fef53284, fef52ca8) + 134 feac68e4 void JavaThread::run() (8d0c98, 0, feac6784, fef3ba68, 73a0, 7000) + 160 feabe128 _start (8d0c98, 5800, 638ce, 47ac, feef0000, 59c018) + 13c ff33c400 _lwp_start (0, 0, 0, 0, 0, 0) The X server is stuck here: 114379: /usr/openwin/bin/Xsun :17 -nobanner -auth /var/dt/A:17-OQGWmg -nobanne ff33d1c4 pollsys (ffbfe6e0, 6, ffbfe9b0, 0) ff2df934 pselect (ffbfe6e0, ff367a84, ff367a84, 44, ffbfe9b0, 0) + 1c8 ff2dfc78 select (4d, 4020e0, ffbfebb8, 0, 0, 0) + 6c 0002fb44 WaitForSomething (0, 4115f0, 0, 0, 0, 0) + 6ac 0002f290 Dispatch (ffbfed28, ffffffff, 39, 411614, 1, 0) + a4 0005023c main (417398, 17cc00, 417398, 411520, 17baa8, 180000) + 8cc 0005d04c _start (0, 0, 0, 0, 0, 0) + 108 This was taken on a Sun Ray but the problem has also been seen on standard Solaris desktops. This problem doesn't occur on Java 1.4 (eg 1.4.2_06). ###@###.### 2005-04-06 14:48:21 GMT
|