RFR (S) 8025238: nsk/jvmti/scenarios/bcinstr/BI04/bi04t002 crashed with SIGSEGV

Zhengyu Gu zhengyu.gu at oracle.com
Fri Oct 4 05:34:53 PDT 2013


Hi Coleen,

src/share/vm/classfile/javaClasses.cpp

1384     sprintf(buf, "\tat %s.null (Redefined)", klass_name)

You might want to change to jio_snprintf() version, it may be caught by 
parfait.

-Zhengyu


On 10/3/2013 2:02 PM, Coleen Phillimore wrote:
> Summary: Redefined class in stack trace may not be found by 
> method_idnum so handle null.
>
> This is a simple change.  I had another change to save the method name 
> (as u2) in the backtrace, but it's not worth the extra footprint in 
> backtraces for this rare case.
>
> The root problem was that we save method_idnum in the backtrace (u2) 
> instead of Method* to avoid Method* from being redefined and 
> deallocated.  I made a change to InstanceKlass::method_from_idnum() to 
> return null rather than the last method in the list, which causes this 
> crash.   Dan and I went down the long rabbit-hole of why method_idnum 
> is changed for obsolete methods and we think there's some cleanup and 
> potential bugs in this area.  But this is not that change.  I'll file 
> another bug to continue this investigation for jdk9 (or 8uN).
>
> Staffan created a test - am including core-libs for the review 
> request.  Also tested with all of the vm testbase tests, mlvm tests, 
> and java/lang/instrument tests.
>
> open webrev at http://cr.openjdk.java.net/~coleenp/8025238/
> bug link https://bugs.openjdk.java.net/browse/JDK-8025238
>
> test case for jdk8 repository:
>
> open webrev at http://cr.openjdk.java.net/~coleenp/8025238_jdk
>
> Thanks,
> Coleen

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/attachments/20131004/55aed8da/attachment.html 


More information about the hotspot-runtime-dev mailing list