JDK-8000459 : assert(java_lang_String::is_instance(entry)) failure with various mlvm tests
Type:Bug
Component:hotspot
Sub-Component:jvmti
Affected Version:hs24,hs25
Priority:P2
Status:Closed
Resolution:Fixed
OS:generic
CPU:generic
Submitted:2012-10-05
Updated:2013-07-18
Resolved:2012-10-10
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.
Following mlvm tests fail with assert(java_lang_String::is_instance(entry)):
vm/mlvm/mixed/func/hprof/formatB
vm/mlvm/mixed/func/hprof/heapAll
vm/mlvm/mixed/func/hprof/heapDump
The assertion failure is reproducible on x86 and ppc.
Comments
On 10/04/2012 02:44 PM, John Rose wrote:
> This is probably because the Unsafe object has been patched over a CONSTANT_String, using Unsafe.defineAnonymousClass.
>
> (The class loader should substitute CONSTANT_Object in such cases, if it doesn't now.)
>
> The assert needs to be detuned to allow this. The verifier already is; see 'is_pseudo_string_at'.
>
> ��� John