RFR (S) 8135012: Don't use G1RootProcessor when scanning remembered sets

Mikael Gerdin mikael.gerdin at oracle.com
Fri Sep 4 07:46:56 UTC 2015


Jon,

On 2015-09-03 20:35, Jon Masamitsu wrote:
> Mikael,
>
> Changes look good.
>
> One minor request.
>
> http://cr.openjdk.java.net/~mgerdin/8135012/webrev.0/src/share/vm/gc/g1/g1CodeBlobClosure.cpp.html
>
>
>    40     assert(!_g1h->obj_in_cs(o) ||
> hr->rem_set()->strong_code_roots_list_contains(_nm), "if o still in CS
> then evacuation failed and nm must already be in the remset");
>
> Could you spell out "collection set" instead of "CS"?

Of course.

>
> I don't need a new webrev (if you make just that change).
>
> Reviewed.

Thanks for the review Jon.

/Mikael

>
> Jon
>
>
>
> On 9/3/2015 8:07 AM, Mikael Gerdin wrote:
>> Hi all,
>>
>> Please review this small refactoring in preparation of some further
>> changes.
>>
>> Calls to scan the remembered sets during a G1 evacuation are currently
>> needlessly tunneled through G1RootProcessor before ending up in G1RemSet.
>>
>> I suggest that we change the code to call oops_into_collection_set_do
>> straight away and that G1CodeBlob is moved to its own file (which also
>> makes it available from outside of G1RootProcessor).
>>
>> Webrev: http://cr.openjdk.java.net/~mgerdin/8135012/webrev.0/
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8135012
>> Testing: JPRT.
>>
>> Thanks
>> /Mikael
>




More information about the hotspot-gc-dev mailing list