Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 165685 - JVM crash when exiting RCP application on Solaris/Motif
Summary: JVM crash when exiting RCP application on Solaris/Motif
Status: RESOLVED DUPLICATE of bug 50145
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.2.1   Edit
Hardware: Sun Windows 2000
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-11-23 12:03 EST by Troy Benohanian CLA
Modified: 2006-11-24 10:46 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Troy Benohanian CLA 2006-11-23 12:03:18 EST
We are experiencing JVM crashes when exiting an RCP application on Solaris/Motif.

To exit, we use IWorkbenchAction in the ApplicationActionBarAdvisor class that extends ActionBarAdvisor. Here is the snippet of code:
   
   IWorkbenchAction exitAction = ActionFactory.QUIT.create(window);
   register(exitAction);
   
The same code works when we create the RCP application for Windows. 
   
The JVM Core dump is attached below:

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0xef261770, pid=2594, tid=1
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_12-b03 mixed mode)
# Problematic frame:
# C  0xef261770
#

---------------  T H R E A D  ---------------

Current thread (0x000373c8):  JavaThread "main" [_thread_in_native, id=1]

siginfo:si_signo=11, si_errno=0, si_code=1, si_addr=0xef261770

Registers:
 O0=0x008d8270 O1=0xef27218c O2=0x008d8270 O3=0xef272198
 O4=0x00000000 O5=0x000005ec O6=0xffbe8808 O7=0xee015904
 G1=0xee09ce30 G2=0x00000000 G3=0x80000000 G4=0xfe29a4d8
 G5=0xf58e8b58 G6=0x00000000 G7=0x00033198 Y=0x00000000
 PC=0xef261770 nPC=0xef261774


Top of Stack: (sp=0xffbe8808)
0xffbe8808:   000000ea 00000000 00000000 00000000
0xffbe8818:   00000000 00000000 00000000 00000000
0xffbe8828:   008d8270 ee09ce20 008d8270 ee09ce2c
0xffbe8838:   ffbe8768 00000000 ffbe8868 ee01589c
0xffbe8848:   00000000 00000000 00000000 00000000
0xffbe8858:   00000000 00000000 00000000 00000002
0xffbe8868:   ee01585c 00000000 00000000 00000000
0xffbe8878:   00000000 00000000 00000000 00000000 

Instructions: (pc=0xef261770)
0xef261760:   
[error occurred during error reporting, step 100, id 0xb]

Stack: [0xffb6c000,0xffbf0000),  sp=0xffbe8808,  free space=498k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  0xef261770
C  [libX11.so.4+0x158a4]  _XrmDefaultInitParseInfo+0x48
C  [libX11.so.4+0x12e24]
C  [libX11.so.4+0x12d38]  XrmGetStringDatabase+0x1c
C  [libXt.so.4+0x116b0]
C  [libXt.so.4+0x11560]
C  [libXt.so.4+0x1120c]  _XtDisplayInitialize+0x28
C  [libXt.so.4+0x10900]  XtOpenDisplay+0x1b8
C  [libswt-motif-3235.so+0x4a4e8]  Java_org_eclipse_swt_internal_motif_OS__1XtOpenDisplay+0xf8
j  org.eclipse.swt.internal.motif.OS._XtOpenDisplay(I[B[B[BII[II)I+0
j  org.eclipse.swt.internal.motif.OS.XtOpenDisplay(I[B[B[BII[II)I+19
j  org.eclipse.swt.widgets.Display.createDisplay(Lorg/eclipse/swt/graphics/DeviceData;)V+244
j  org.eclipse.swt.widgets.Display.create(Lorg/eclipse/swt/graphics/DeviceData;)V+18
j  org.eclipse.swt.graphics.Device.<init>(Lorg/eclipse/swt/graphics/DeviceData;)V+102
j  org.eclipse.swt.widgets.Display.<init>(Lorg/eclipse/swt/graphics/DeviceData;)V+5
j  org.eclipse.swt.widgets.Display.<init>()V+2
j  org.eclipse.swt.widgets.Display.getDefault()Lorg/eclipse/swt/widgets/Display;+10
j  org.eclipse.swt.widgets.Display$1.run()V+8
j  org.eclipse.swt.graphics.Device.getDevice()Lorg/eclipse/swt/graphics/Device;+9
j  org.eclipse.swt.graphics.Image.<init>(Lorg/eclipse/swt/graphics/Device;Lorg/eclipse/swt/graphics/ImageData;Lorg/eclipse/swt/graphics/ImageData;)V+28
j  org.eclipse.jface.resource.ImageDescriptor.createImage(ZLorg/eclipse/swt/graphics/Device;)Lorg/eclipse/swt/graphics/Image;+40
j  org.eclipse.jface.resource.ImageDescriptor.createImage(Z)Lorg/eclipse/swt/graphics/Image;+5
j  org.eclipse.jface.resource.ImageDescriptor.createImage()Lorg/eclipse/swt/graphics/Image;+2
j  org.eclipse.hyades.trace.internal.ui.PDPluginImages.createManaged(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jface/resource/ImageDescriptor;+55
j  org.eclipse.hyades.trace.internal.ui.PDPluginImages.<clinit>()V+40
v  ~StubRoutines::call_stub
V  [libjvm.so+0xcace8]
V  [libjvm.so+0xca990]
V  [libjvm.so+0xca4b4]
V  [libjvm.so+0xc9f78]
V  [libjvm.so+0xcd9cc]
V  [libjvm.so+0xcc8a0]
V  [libjvm.so+0xcb8bc]
j  org.eclipse.hyades.trace.ui.UIPlugin.stop(Lorg/osgi/framework/BundleContext;)V+9
j  org.eclipse.osgi.framework.internal.core.BundleContextImpl$3.run()Ljava/lang/Object;+21
v  ~StubRoutines::call_stub
V  [libjvm.so+0xcace8]
V  [libjvm.so+0xd7a50]
C  [libjava.so+0xd6e0]  Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2+0x1c
j  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;+0
j  org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop()V+8
j  org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(Z)V+78
j  org.eclipse.osgi.framework.internal.core.AbstractBundle.stop()V+20
j  org.eclipse.core.runtime.internal.adaptor.BundleStopper.basicStopBundles()V+99
j  org.eclipse.core.runtime.internal.adaptor.BundleStopper.stopBundles()V+66
j  org.eclipse.core.runtime.internal.adaptor.EclipseAdaptorHook.frameworkStopping(Lorg/osgi/framework/BundleContext;)V+92
j  org.eclipse.osgi.baseadaptor.BaseAdaptor.frameworkStopping(Lorg/osgi/framework/BundleContext;)V+30
j  org.eclipse.osgi.framework.internal.core.Framework.shutdown()V+39
j  org.eclipse.osgi.framework.internal.core.Framework.close()V+8
j  org.eclipse.osgi.framework.internal.core.OSGi.close()V+4
j  org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown()V+16
j  org.eclipse.core.runtime.adaptor.EclipseStarter.run([Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Object;+173
v  ~StubRoutines::call_stub
V  [libjvm.so+0xcace8]
V  [libjvm.so+0xea774]
V  [libjvm.so+0x1a3ef0]
V  [libjvm.so+0x1a39b8]
C  [libjava.so+0xf10c]  Java_sun_reflect_NativeMethodAccessorImpl_invoke0+0x18
j  sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0
j  sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+87
j  sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6
j  java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+111
j  org.eclipse.core.launcher.Main.invokeFramework([Ljava/lang/String;[Ljava/net/URL;)V+181
j  org.eclipse.core.launcher.Main.basicRun([Ljava/lang/String;)V+107
j  org.eclipse.core.launcher.Main.run([Ljava/lang/String;)I+4
j  org.eclipse.core.launcher.Main.main([Ljava/lang/String;)V+10
v  ~StubRoutines::call_stub
V  [libjvm.so+0xcace8]
V  [libjvm.so+0xded64]
V  [libjvm.so+0x168834]
C  [java+0x2f94]  main+0x167c

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  org.eclipse.swt.internal.motif.OS._XtOpenDisplay(I[B[B[BII[II)I+0
j  org.eclipse.swt.internal.motif.OS.XtOpenDisplay(I[B[B[BII[II)I+19
j  org.eclipse.swt.widgets.Display.createDisplay(Lorg/eclipse/swt/graphics/DeviceData;)V+244
j  org.eclipse.swt.widgets.Display.create(Lorg/eclipse/swt/graphics/DeviceData;)V+18
j  org.eclipse.swt.graphics.Device.<init>(Lorg/eclipse/swt/graphics/DeviceData;)V+102
j  org.eclipse.swt.widgets.Display.<init>(Lorg/eclipse/swt/graphics/DeviceData;)V+5
j  org.eclipse.swt.widgets.Display.<init>()V+2
j  org.eclipse.swt.widgets.Display.getDefault()Lorg/eclipse/swt/widgets/Display;+10
j  org.eclipse.swt.widgets.Display$1.run()V+8
j  org.eclipse.swt.graphics.Device.getDevice()Lorg/eclipse/swt/graphics/Device;+9
j  org.eclipse.swt.graphics.Image.<init>(Lorg/eclipse/swt/graphics/Device;Lorg/eclipse/swt/graphics/ImageData;Lorg/eclipse/swt/graphics/ImageData;)V+28
j  org.eclipse.jface.resource.ImageDescriptor.createImage(ZLorg/eclipse/swt/graphics/Device;)Lorg/eclipse/swt/graphics/Image;+40
j  org.eclipse.jface.resource.ImageDescriptor.createImage(Z)Lorg/eclipse/swt/graphics/Image;+5
j  org.eclipse.jface.resource.ImageDescriptor.createImage()Lorg/eclipse/swt/graphics/Image;+2
j  org.eclipse.hyades.trace.internal.ui.PDPluginImages.createManaged(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jface/resource/ImageDescriptor;+55
j  org.eclipse.hyades.trace.internal.ui.PDPluginImages.<clinit>()V+40
v  ~StubRoutines::call_stub
j  org.eclipse.hyades.trace.ui.UIPlugin.stop(Lorg/osgi/framework/BundleContext;)V+9
j  org.eclipse.osgi.framework.internal.core.BundleContextImpl$3.run()Ljava/lang/Object;+21
v  ~StubRoutines::call_stub
j  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;+0
j  org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop()V+8
j  org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(Z)V+78
j  org.eclipse.osgi.framework.internal.core.AbstractBundle.stop()V+20
j  org.eclipse.core.runtime.internal.adaptor.BundleStopper.basicStopBundles()V+99
j  org.eclipse.core.runtime.internal.adaptor.BundleStopper.stopBundles()V+66
j  org.eclipse.core.runtime.internal.adaptor.EclipseAdaptorHook.frameworkStopping(Lorg/osgi/framework/BundleContext;)V+92
j  org.eclipse.osgi.baseadaptor.BaseAdaptor.frameworkStopping(Lorg/osgi/framework/BundleContext;)V+30
j  org.eclipse.osgi.framework.internal.core.Framework.shutdown()V+39
j  org.eclipse.osgi.framework.internal.core.Framework.close()V+8
j  org.eclipse.osgi.framework.internal.core.OSGi.close()V+4
j  org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown()V+16
j  org.eclipse.core.runtime.adaptor.EclipseStarter.run([Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Object;+173
v  ~StubRoutines::call_stub
j  sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0
j  sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+87
j  sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6
j  java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+111
j  org.eclipse.core.launcher.Main.invokeFramework([Ljava/lang/String;[Ljava/net/URL;)V+181
j  org.eclipse.core.launcher.Main.basicRun([Ljava/lang/String;)V+107
j  org.eclipse.core.launcher.Main.run([Ljava/lang/String;)I+4
j  org.eclipse.core.launcher.Main.main([Ljava/lang/String;)V+10
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x0017b7b8 JavaThread "Monitoring Agent" [_thread_blocked, id=35]
  0x00b11ff8 JavaThread "RequestProcessor-5" daemon [_thread_blocked, id=31]
  0x00b11e50 JavaThread "RequestProcessor-4" daemon [_thread_blocked, id=30]
  0x00b12dc8 JavaThread "RequestProcessor-3" daemon [_thread_blocked, id=29]
  0x00b0e3f0 JavaThread "RequestProcessor-2" daemon [_thread_blocked, id=28]
  0x00b10ca8 JavaThread "RequestProcessor-1" daemon [_thread_blocked, id=27]
  0x009bba60 JavaThread "ServerMessageReceptor-0" daemon [_thread_blocked, id=26]
  0x009bea68 JavaThread "Event Channel" [_thread_blocked, id=25]
  0x000f6490 JavaThread "ClientMessageReceptor-0" daemon [_thread_blocked, id=22]
  0x002e0dd8 JavaThread "ServerSocketListener" daemon [_thread_blocked, id=20]
  0x00aaa390 JavaThread "RequestController-1" daemon [_thread_blocked, id=19]
  0x00be0dc0 JavaThread "Worker-1" [_thread_blocked, id=18]
  0x001261c0 JavaThread "Worker-0" [_thread_blocked, id=17]
  0x00276668 JavaThread "Start Level Event Dispatcher" daemon [_thread_blocked, id=14]
  0x002763e0 JavaThread "State Saver" [_thread_blocked, id=13]
  0x002725a8 JavaThread "Framework Event Dispatcher" daemon [_thread_blocked, id=12]
  0x000d0cc0 JavaThread "CompilerThread0" daemon [_thread_blocked, id=9]
  0x000d0058 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=8]
  0x000c9a98 JavaThread "Finalizer" daemon [_thread_blocked, id=6]
  0x000c9010 JavaThread "Reference Handler" daemon [_thread_blocked, id=5]
=>0x000373c8 JavaThread "main" [_thread_in_native, id=1]

Other Threads:
  0x000c8230 VMThread [id=4]
  0x000d2ec8 WatcherThread [id=10]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 def new generation   total 2176K, used 294K [0xf1400000, 0xf1630000, 0xf1b10000)
  eden space 2112K,  10% used [0xf1400000, 0xf1439a80, 0xf1610000)
  from space 64K, 100% used [0xf1620000, 0xf1630000, 0xf1630000)
  to   space 64K,   0% used [0xf1610000, 0xf1610000, 0xf1620000)
 tenured generation   total 16808K, used 10714K [0xf1b10000, 0xf2b7a000, 0xf5400000)
   the space 16808K,  63% used [0xf1b10000, 0xf2586808, 0xf2586a00, 0xf2b7a000)
 compacting perm gen  total 18432K, used 18373K [0xf5400000, 0xf6600000, 0xf9400000)
   the space 18432K,  99% used [0xf5400000, 0xf65f1480, 0xf65f1600, 0xf6600000)

Dynamic libraries:
0x00010000 	.../SunOS/sparc/j2sdk1.4.2/bin/java
0xff350000 	/usr/lib/libthread.so.1
0xff330000 	/usr/lib/libdl.so.1
0xff200000 	/usr/lib/libc.so.1
0xff390000 	/usr/platform/SUNW,Sun-Blade-1500/lib/libc_psr.so.1
0xfe000000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/client/libjvm.so
0xff2d0000 	/usr/lib/libCrun.so.1
0xff1e0000 	/usr/lib/libsocket.so.1
0xff100000 	/usr/lib/libnsl.so.1
0xff0b0000 	/usr/lib/libm.so.1
0xff1b0000 	/usr/lib/libsched.so.1
0xff090000 	/usr/lib/libmp.so.2
0xff060000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/native_threads/libhpi.so
0xff020000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/libverify.so
0xfe7b0000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/libjava.so
0xfe790000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/libzip.so
0xfe500000 	/usr/lib/locale/en_US/en_US.so.2
0xfe460000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/libnet.so
0xfdfe0000 	.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/libnio.so
0xfdfc0000 	/usr/lib/librt.so.1
0xfdfa0000 	/usr/lib/libaio.so.1
0xfdee0000 	/usr/lib/libsendfile.so.1
0xee390000 	.../solaris.motif.sparc/configuration/org.eclipse.osgi/bundles/49/1/.cp/libswt-motif-3235.so
0xee180000 	/usr/lib/libXm.so.4
0xee110000 	/usr/lib/libXt.so.4
0xee000000 	/usr/lib/libX11.so.4
0xef8e0000 	/usr/openwin/lib/libXp.so.1
0xef620000 	/usr/openwin/lib/libXtst.so.1
0xef4e0000 	/usr/lib/libSM.so.6
0xef3d0000 	/usr/lib/libICE.so.6
0xef3a0000 	/usr/lib/libXext.so.0
0xeef50000 	/usr/lib//liblayout.so
0xeede0000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libtptpCommon.so
0xee7e0000 	/usr/lib/libpthread.so.1
0xee0b0000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhcclco.so
0xee8e0000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhccls.so
0xedf60000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhcbnd.so
0xedf40000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhcclsm.so
0xedf20000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhccldt.so
0xedf00000 	.../solaris.motif.sparc/plugins/org.eclipse.hyades.execution.solaris.sparc_4.2.0.v200606131519/libhcjbnd.so

VM Arguments:
java_command: .../solaris.motif.sparc/./startup.jar -os solaris -ws motif -arch sparc -launcher .../solaris.motif.sparc/./eclipse -name Eclipse -showsplash 600 -exitdata 1 -vm .../SunOS/sparc/bin/jdk1.4/java -vmargs -jar .../solaris.motif.sparc/./startup.jar
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME= .../SunOS/sparc/bin/jdk1.4/jdk
PATH=.../SunOS/sparc/bin/jdk1.4...
LD_LIBRARY_PATH=.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc/client:.../SunOS/sparc/j2sdk1.4.2/jre/lib/sparc:.../SunOS/sparc/j2sdk1.4.2/jre/../lib/sparc/...
SHELL=/bin/tcsh
DISPLAY=:0.0
HOSTTYPE=sun4
OSTYPE=solaris
MACHTYPE=sparc


---------------  S Y S T E M  ---------------

OS:                     Solaris 8 HW 7/03 s28s_hw3wos_05a SPARC
           Copyright 2003 Sun Microsystems, Inc.  All Rights Reserved.
                             Assembled 11 June 2003

uname:SunOS 5.8 Generic_117350-28 sun4u  (T1 libthread)
rlimit: STACK 8192k, CORE 8k, NOFILE 1024, AS infinity
load average:0.26 0.32 0.29

CPU:total 1 has_v8, has_v9, has_vis1, has_vis2, is_ultra3

Memory: 8k page, physical 2097152k(1721240k free)

vm_info: Java HotSpot(TM) Client VM (1.4.2_12-b03) for solaris-sparc, built on May  9 2006 13:03:17 by unknown with Workshop 5.2 compat=5


   
   This crash has a problem for us because different internal cleanup operations are not triggered what cause problems when starting the application again.
Comment 1 Grant Gayed CLA 2006-11-24 10:46:45 EST
Dump looks like bug 142629, so marking as dup of bug 50145.

*** This bug has been marked as a duplicate of 50145 ***