review for 7043040: JSR292: JRuby bench/shootout/binarytrees.ruby-2.ruby SEGV: constantPoolKlass::oop_follow_contents

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue May 10 14:35:37 PDT 2011


Looks good.

Vladimir

Tom Rodriguez wrote:
> On May 10, 2011, at 2:24 PM, Vladimir Kozlov wrote:
> 
>> Can you move cp->tag_at(i) to local var before all checks?
> 
> Ok.
> 
>> Is it possible for entry.get_oop() to return NULL?
> 
> No.
> 
> tom
> 
>> Thanks,
>> Vladimir
>>
>> Tom Rodriguez wrote:
>>> http://cr.openjdk.java.net/~never/7043040
>>> 7043040: JSR292: JRuby bench/shootout/binarytrees.ruby-2.ruby SEGV: constantPoolKlass::oop_follow_contents
>>> Reviewed-by:
>>> The logic in oop_push_constants was skipping JVM_CONSTANT_Object
>>> entries which would cause corruption in later GCs.  The fix is to use
>>> is_pointer_entry to identify roots like all the other visitor.  The
>>> verify_on method was also too weak so it missed the problem when run
>>> with the verify GC flags.  Tested with failing test from report.
> 


More information about the hotspot-compiler-dev mailing list