RFR: 8139424: SIGSEGV, Problematic frame: # V [libjvm.so+0xd0c0cc] void InstanceKlass::oop_oop_iterate_oop_maps_specialized<true, oopDesc*, MarkAndPushClosure>

Stefan Johansson stefan.johansson at oracle.com
Thu Nov 12 08:47:27 UTC 2015

On 2015-11-12 01:23, Kim Barrett wrote:
> On Nov 11, 2015, at 10:41 AM, Stefan Johansson <stefan.johansson at oracle.com> wrote:
>> Hi,
>> Please review this fix for:
>> https://bugs.openjdk.java.net/browse/JDK-8139424
>> Webrev:
>> http://cr.openjdk.java.net/~sjohanss/8139424/hotspot.00/
> Good find!
> The added guarantee in RegisterHumongousWithInCSetFastTestClosure::doHeapRegion looks like leftover debugging code.
Thanks for looking at this Kim,

It is from the debugging, but it was left on purpose. This guarantee 
will help us catch the case where we iterated the old version of the 
SparsePRT and not the expanded one, because the iterator uses 
SparsePRT->_cur to iterate while occupied uses SparsePRT->_next. I could 
update the message to say:
"Remembered set hash maps out of sync, cur: " SIZE_FORMAT " entries, 
next: " SIZE_FORMAT " entries"

I think this is more informative and I prefer to leave the guarantee in. 
Updated webrev:

> Tom already pointed out typo in added comment.
> Otherwise, looks good.  I don’t need another webrev.

Thanks for reviewing,

More information about the hotspot-gc-dev mailing list