RFR(XS): 8144852: Corrupted oop in nmethod

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Dec 11 11:49:32 UTC 2015


Dean, thanks for taking care of it.

Can oopDesc::print_value_on and print_value_on_maybe_null be enhanced 
instead to handle non_oop_word case (in addition to NULL case)?

Also, the following is slightly misleading since metadata pointers 
aren't oops:
  void nmethod::print_recorded_metadata() {
+    if (m == (Metadata*)Universe::non_oop_word()) {
+      tty->print("non-oop word");

Best regards,
Vladimir Ivanov

On 12/11/15 6:36 AM, Dean Long wrote:
> https://bugs.openjdk.java.net/browse/JDK-8144852
> http://cr.openjdk.java.net/~dlong//8144852/webrev/
>
> The fix for [1] introduced new functions nmethod::print_recorded_oops
> and nmethod::print_recorded_metadata that print all oop and metadata
> values in an nmethod.  Currently NULL values are handled OK, but
> Universe::non_oop_word values cause a crash.
>
> (This bug is marked confidential because it was reported against one of
> our closed ports.)
>
> dl
>
> [1]     JDK-8072008: Emit direct call instead of linkTo* for recursive
> indy/MH.invoke* calls


More information about the hotspot-compiler-dev mailing list