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:24:30 PDT 2011
Can you move cp->tag_at(i) to local var before all checks? Is it possible for
entry.get_oop() to return NULL?
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