JDK-7082949 : JSR 292: missing ResourceMark in methodOopDesc::make_invoke_method
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: hs22
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: solaris_10
  • CPU: x86
  • Submitted: 2011-08-24
  • Updated: 2013-04-24
  • Resolved: 2011-11-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8 Other
7u2Fixed 8Fixed hs22Fixed
Related Reports
Relates :  
Description
In looking for my classDefNotFound bug I tried the latest build I could find for bsd port. 

The 0609 version worked at least past this point but the 0808 version gave a fatal error 

#  fatal error: memory leak: allocating without ResourceMark 

V  [libjvm.dylib+0x22ebd]  VMError::report_and_die()+0x13d 
V  [libjvm.dylib+0xd1e4]  report_vm_error(char const*, int, char const*, char const*)+0x84 
V  [libjvm.dylib+0x1f8be]  resource_allocate_bytes(unsigned long)+0x14e 
V  [libjvm.dylib+0x9f10c7]  methodOopDesc::make_invoke_method(KlassHandle, Symbol*, Symbol*, Handle, Thread*)+0x387 
V  [libjvm.dylib+0xbebd8d]  SystemDictionary::find_method_handle_invoke(Symbol*, Symbol*, KlassHandle, Thread*)+0x36d 
V  [libjvm.dylib+0x8e7238]  LinkResolver::lookup_implicit_method(methodHandle&, KlassHandle, Symbol*, Symbol*, KlassHandle, Thread*)+0x108 
V  [libjvm.dylib+0x8e943e]  LinkResolver::resolve_method(methodHandle&, KlassHandle, Symbol*, Symbol*, KlassHandle, bool, Thread*)+0xc7e 
V  [libjvm.dylib+0x8ed466]  LinkResolver::linktime_resolve_virtual_method(methodHandle&, KlassHandle, Symbol*, Symbol*, KlassHandle, bool, Thread*)+0x36 
V  [libjvm.dylib+0x8ee539]  LinkResolver::resolve_virtual_call(CallInfo&, Handle, KlassHandle, KlassHandle, Symbol*, Symbol*, KlassHandle, bool, bool, Thread*)+0x59 
V  [libjvm.dylib+0x8ee758]  LinkResolver::resolve_invokevirtual(CallInfo&, Handle, constantPoolHandle, int, Thread*)+0x1b8 
V  [libjvm.dylib+0x6c43ec]  InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code)+0x2ac 
j  ri.core.rtalk.RtCallSite.sendSmToRtalk([B)Z+79 
j  ri.experiment2.TestSm$1.run()V+7

Comments
EVALUATION See main CR
14-09-2011

EVALUATION http://hg.openjdk.java.net/hsx/hotspot-main/hotspot/rev/ac8738449b6f
08-09-2011

EVALUATION 7082949: JSR 292: missing ResourceMark in methodOopDesc::make_invoke_method Reviewed-by: kvn, twisti The fix for 7056328 added some resource allocation in some cases when building the invoke method but didn't insert a ResourceMark. Mostly we ended up using one in a caller but sometimes the caller doesn't have one so this code needs its own. Tested with failing test case.
26-08-2011

EVALUATION http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot/rev/ac8738449b6f
26-08-2011