RFR (S) 8208172: SIGSEGV when owner of invokedynamic bootstrap method throws an exception - Symbol::increment_refcount()+0x0

David Holmes david.holmes at oracle.com
Mon Aug 20 23:56:01 UTC 2018


Hi Coleen,

Looks good.

On 21/08/2018 6:04 AM, coleen.phillimore at oracle.com wrote:
> Summary: make table for resolution errors not always expect non-null 
> message string.

Thanks for fixing this. I'm unsure why we thought there had to be a 
detail message? AFAIK there is no specified requirement for this. 
Obviously having a detail message is the most common case.

I'm also not clear why we only hit this in the indy bootstrap case?

One minor comment:

src/hotspot/share/classfile/resolutionErrors.cpp

void ResolutionErrorEntry::set_message(Symbol* c) {
     _message = c;
+   if (_message != NULL) {
       _message->increment_refcount();
+   }
   }

Is there any reason not to move the assignment inside the if clause as well?

Thanks,
David

> Tested with hs-tier1-2, and all hotspot/jtreg/runtime tests, and test 
> added.
> 
> open webrev at http://cr.openjdk.java.net/~coleenp/8208172.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8208172
> 
> Thanks,
> Coleen


More information about the hotspot-runtime-dev mailing list