Possible bug

Howard Lovatt howard.lovatt at gmail.com
Mon Mar 7 01:15:12 PST 2011


Hi,

I got the following when trying to use CallSites on Stephen Bannasch's
latest build (which isn't the latest latest build and therefore this
issue might have been found already):

# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/resourceArea.hpp:73
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error
(/Users/stephen/dev/java/src/mlvm/sources/hotspot/src/share/vm/memory/resourceArea.hpp:73),
pid=57545, tid=4298117120
#  fatal error: memory leak: allocating without ResourceMark
#
# JRE version: 7.0
# Java VM: OpenJDK 64-Bit Server VM (20.0-b06-fastdebug mixed mode
bsd-amd64 compressed oops)
# An error report file with more information is saved as:
# /Users/lov080/Dropbox/Personal/Java/examples/Invoke Dynamic Multiple
Dispatch/hs_err_pid57545.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
VM option '+UnlockExperimentalVMOptions'
VM option '+EnableMethodHandles'
VM option '+EnableInvokeDynamic'
Current thread is 4298117120
Dumping core ...

The err report is:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error
(/Users/stephen/dev/java/src/mlvm/sources/hotspot/src/share/vm/memory/resourceArea.hpp:73),
pid=57545, tid=4298117120
#  fatal error: memory leak: allocating without ResourceMark
#
# JRE version: 7.0
# Java VM: OpenJDK 64-Bit Server VM (20.0-b06-fastdebug mixed mode
bsd-amd64 compressed oops)
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

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

Current thread (0x0000000102800800):  JavaThread "main"
[_thread_in_vm, id=3149824,
stack(0x0000000100201000,0x0000000100301000)]

Stack: [0x0000000100201000,0x0000000100301000],
sp=0x00000001002ff450,  free space=1017k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.dylib+0x21147]  VMError::report_and_die()+0x137
V  [libjvm.dylib+0xbbc4]  report_vm_error(char const*, int, char
const*, char const*)+0x84
V  [libjvm.dylib+0x1dcca]  resource_allocate_bytes(unsigned long)+0xca
V  [libjvm.dylib+0xb8db56]  symbolOopDesc::as_klass_external_name() const+0x26
V  [libjvm.dylib+0x87ba16]  Klass::external_name() const+0x196
V  [libjvm.dylib+0x978a02]
MethodHandles::check_argument_type_change(BasicType, klassOopDesc*,
BasicType, klassOopDesc*, int, bool)+0x1d2
V  [libjvm.dylib+0x97b617]
MethodHandles::check_method_type_change(oopDesc*, int, int, int,
oopDesc*, int, oopDesc*, int, oopDesc*, int, int, bool)+0x2f7
V  [libjvm.dylib+0x97cb1e]
MethodHandles::verify_AdapterMethodHandle(Handle, int, Thread*)+0x2be
V  [libjvm.dylib+0x97dc45]
MethodHandles::init_AdapterMethodHandle(Handle, Handle, int,
Thread*)+0x2d5
V  [libjvm.dylib+0x98001d]  MHI_init_AMH+0x3ad
j  sun.dyn.MethodHandleNatives.init(Lsun/dyn/AdapterMethodHandle;Ljava/dyn/MethodHandle;I)V+0
j  sun.dyn.AdapterMethodHandle.<init>(Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;JLjava/lang/Object;)V+37
j  sun.dyn.AdapterMethodHandle.<init>(Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;J)V+5
j  sun.dyn.AdapterMethodHandle.makeRetype(Lsun/dyn/Access;Ljava/dyn/MethodType;Ljava/dyn/MethodHandle;Z)Ljava/dyn/MethodHandle;+48
j  sun.dyn.AdapterMethodHandle.makeRetypeRaw(Lsun/dyn/Access;Ljava/dyn/MethodType;Ljava/dyn/MethodHandle;)Ljava/dyn/MethodHandle;+4
j  sun.dyn.Invokers.uninitializedCallSite()Ljava/dyn/MethodHandle;+142
j  sun.dyn.Invokers.uninitializedCallSite()Ljava/dyn/MethodHandle;+43
j  java.dyn.CallSite.<init>(Ljava/dyn/MethodType;)V+9
j  java.dyn.MutableCallSite.<init>(Ljava/dyn/MethodType;)V+2
j  invokedynamicmultipledispatch.Dispatchers$ResettableCallSite.<init>(Ljava/dyn/MethodType;)V+2
j  invokedynamicmultipledispatch.Dispatchers.dispatcher(Ljava/util/Collection;Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;)Ljava/dyn/MethodHandle;+5
j  invokedynamicmultipledispatch.$$PEC$$CostCalculatorDispatcher.dispatcher()Ljava/dyn/MethodHandle;+9
j  invokedynamicmultipledispatch.Cost.<clinit>()V+0
v  ~StubRoutines::call_stub
V  [libjvm.dylib+0x698596]  JavaCalls::call_helper(JavaValue*,
methodHandle*, JavaCallArguments*, Thread*)+0x5e6
V  [libjvm.dylib+0x69753b]  JavaCalls::call(JavaValue*, methodHandle,
JavaCallArguments*, Thread*)+0x6b
V  [libjvm.dylib+0x63db51]
instanceKlass::call_class_initializer_impl(instanceKlassHandle,
Thread*)+0x111
V  [libjvm.dylib+0x63dd0c]  instanceKlass::call_class_initializer(Thread*)+0x9c
V  [libjvm.dylib+0x640cdc]
instanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x42c
V  [libjvm.dylib+0x6414ec]  instanceKlass::initialize(Thread*)+0x10c
V  [libjvm.dylib+0x6b34d5]  get_method_id(JNIEnv_*, _jclass*, char
const*, char const*, bool, Thread*)+0x285
V  [libjvm.dylib+0x6c0ef3]  jni_GetStaticMethodID+0x133
C  [java+0x2528]  JavaMain+0x378
C  [libSystem.B.dylib+0x3a536]  _pthread_start+0x14b
C  [libSystem.B.dylib+0x3a3e9]  thread_start+0xd

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.dyn.MethodHandleNatives.init(Lsun/dyn/AdapterMethodHandle;Ljava/dyn/MethodHandle;I)V+0
j  sun.dyn.AdapterMethodHandle.<init>(Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;JLjava/lang/Object;)V+37
j  sun.dyn.AdapterMethodHandle.<init>(Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;J)V+5
j  sun.dyn.AdapterMethodHandle.makeRetype(Lsun/dyn/Access;Ljava/dyn/MethodType;Ljava/dyn/MethodHandle;Z)Ljava/dyn/MethodHandle;+48
j  sun.dyn.AdapterMethodHandle.makeRetypeRaw(Lsun/dyn/Access;Ljava/dyn/MethodType;Ljava/dyn/MethodHandle;)Ljava/dyn/MethodHandle;+4
j  sun.dyn.Invokers.uninitializedCallSite()Ljava/dyn/MethodHandle;+142
j  sun.dyn.Invokers.uninitializedCallSite()Ljava/dyn/MethodHandle;+43
j  java.dyn.CallSite.<init>(Ljava/dyn/MethodType;)V+9
j  java.dyn.MutableCallSite.<init>(Ljava/dyn/MethodType;)V+2
j  invokedynamicmultipledispatch.Dispatchers$ResettableCallSite.<init>(Ljava/dyn/MethodType;)V+2
j  invokedynamicmultipledispatch.Dispatchers.dispatcher(Ljava/util/Collection;Ljava/dyn/MethodHandle;Ljava/dyn/MethodType;)Ljava/dyn/MethodHandle;+5
j  invokedynamicmultipledispatch.$$PEC$$CostCalculatorDispatcher.dispatcher()Ljava/dyn/MethodHandle;+9
j  invokedynamicmultipledispatch.Cost.<clinit>()V+0
v  ~StubRoutines::call_stub

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

Java Threads: ( => current thread )
  0x00000001008ba800 JavaThread "Low Memory Detector" daemon
[_thread_blocked, id=113938432,
stack(0x0000000106ba9000,0x0000000106ca9000)]
  0x00000001008b9800 JavaThread "C2 CompilerThread1" daemon
[_thread_blocked, id=112877568,
stack(0x0000000106aa6000,0x0000000106ba6000)]
  0x0000000102818800 JavaThread "C2 CompilerThread0" daemon
[_thread_blocked, id=111816704,
stack(0x00000001069a3000,0x0000000106aa3000)]
  0x000000010284b000 JavaThread "Signal Dispatcher" daemon
[_thread_blocked, id=110755840,
stack(0x00000001068a0000,0x00000001069a0000)]
  0x000000010283b000 JavaThread "Finalizer" daemon [_thread_blocked,
id=109694976, stack(0x000000010679d000,0x000000010689d000)]
  0x0000000102834000 JavaThread "Reference Handler" daemon
[_thread_blocked, id=108634112,
stack(0x000000010669a000,0x000000010679a000)]
=>0x0000000102800800 JavaThread "main" [_thread_in_vm, id=3149824,
stack(0x0000000100201000,0x0000000100301000)]

Other Threads:
  0x0000000102802000 VMThread [stack:
0x0000000106597000,0x0000000106697000] [id=107573248]
  0x00000001008bc000 WatcherThread [stack:
0x0000000106cac000,0x0000000106dac000] [id=114999296]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 PSYoungGen      total 27712K, used 476K [0x00000007e1160000,
0x00000007e3040000, 0x0000000800000000)
  eden space 23808K, 2% used
[0x00000007e1160000,0x00000007e11d70b0,0x00000007e28a0000)
  from space 3904K, 0% used
[0x00000007e2c70000,0x00000007e2c70000,0x00000007e3040000)
  to   space 3904K, 0% used
[0x00000007e28a0000,0x00000007e28a0000,0x00000007e2c70000)
 PSOldGen        total 63360K, used 0K [0x00000007a3400000,
0x00000007a71e0000, 0x00000007e1160000)
  object space 63360K, 0% used
[0x00000007a3400000,0x00000007a3400000,0x00000007a71e0000)
 PSPermGen       total 21248K, used 4068K [0x000000079e200000,
0x000000079f6c0000, 0x00000007a3400000)
  object space 21248K, 19% used
[0x000000079e200000,0x000000079e5f92b0,0x000000079f6c0000)

Code Cache  [0x0000000103000000, 0x0000000103270000, 0x0000000106000000)
 total_blobs=162 nmethods=0 adapters=137 free_code_cache=49290688
largest_free_block=384

Dynamic libraries:
0x0000000000000000 	/usr/lib/libSystem.B.dylib
0x0000000000000000 	/usr/lib/system/libmathCommon.A.dylib
0x0000000101000000
	/Users/lov080/Downloads/MLVM/1.7.0_2011_02_24/Home/jre/lib/amd64/server/libjvm.dylib
0x0000000000000000 	/usr/lib/libstdc++.6.dylib
0x0000000100054000
	/Users/lov080/Downloads/MLVM/1.7.0_2011_02_24/Home/jre/lib/amd64/libverify.dylib
0x0000000100064000
	/Users/lov080/Downloads/MLVM/1.7.0_2011_02_24/Home/jre/lib/amd64/libjava.dylib
0x00000001000a3000
	/Users/lov080/Downloads/MLVM/1.7.0_2011_02_24/Home/jre/lib/amd64/libzip.dylib

VM Arguments:
jvm_args: -Dfile.encoding=UTF-8 -ea -Xverify:all
-XX:+UnlockExperimentalVMOptions -XX:+EnableMethodHandles
-XX:+EnableInvokeDynamic
java_command: invokedynamicmultipledispatch.Cost
Launcher Type: SUN_STANDARD

Environment Variables:
PATH=/usr/bin:/bin:/usr/sbin:/sbin
SHELL=/bin/bash
DISPLAY=/tmp/launch-6tDrtm/org.x:0

Signal Handlers:
SIGSEGV: [libjvm.dylib+0xc5ffb0], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGBUS: [libjvm.dylib+0xc5ffb0], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGFPE: [libjvm.dylib+0xa06750], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGPIPE: [libjvm.dylib+0xa06750], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGXFSZ: [libjvm.dylib+0xa06750], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGILL: [libjvm.dylib+0xa06750], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000002
SIGUSR2: [libjvm.dylib+0xa0a3a0], sa_mask[0]=0x00000004, sa_flags=0x00000042
SIGHUP: [libjvm.dylib+0xa08cb0], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGINT: SIG_IGN, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGTERM: [libjvm.dylib+0xa08cb0], sa_mask[0]=0xfffefeff, sa_flags=0x00000042
SIGQUIT: [libjvm.dylib+0xa08cb0], sa_mask[0]=0xfffefeff, sa_flags=0x00000042


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

OS:Bsd
uname:Darwin 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17
PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 i386
rlimit: STACK 8192k, CORE 0k, NPROC 266, NOFILE 10240
CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 15
stepping 6, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3

Memory: 4k page, physical 6075092k(1518773k free)

/proc/meminfo:


vm_info: OpenJDK 64-Bit Server VM (20.0-b06-fastdebug) for bsd-amd64
JRE (1.7.0-internal-fastdebug-stephen_2011_02_24_08_19-b00), built on
Feb 24 2011 08:25:51 by "stephen" with gcc 4.0.1 (Apple Inc. build
5494)

time: Mon Mar  7 19:59:28 2011
elapsed time: 11 seconds



-- 
  -- Howard.


More information about the mlvm-dev mailing list