RFR: 8189359: Move native weak oops cleaning out of ReferenceProcessor

Kim Barrett kim.barrett at oracle.com
Wed Oct 18 00:09:30 UTC 2017


> On Oct 17, 2017, at 5:38 PM, Per Liden <per.liden at oracle.com> wrote:
> 
> Hi,
> 
> On 2017-10-17 22:57, Stefan Karlsson wrote:
> [...]
>> Here are the updated webrevs:
>>  http://cr.openjdk.java.net/~stefank/8189359/webrev.01.delta
>>  http://cr.openjdk.java.net/~stefank/8189359/webrev.01
> 
> Looks good. Just two comments.
> 
> share/gc/parallel/psScavenge.cpp:
> 
> 446     {
> 447       GCTraceTime(Debug, gc, phases) tm("Weak Processing", &_gc_timer);
> 448       WeakProcessor::weak_oops_do(&_is_alive_closure, &root_closure);
> 449     }
> 
> I see you've kept the "complete" closure in WeakProcessor::weak_oops_do(), which is fine and we can clean that out later, but here you don't seem to mimic exactly what the old code did. I think you want to pass in &evac_followers here, right?
> 
> share/gc/serial/defNewGeneration.cpp:
> 
> 662   WeakProcessor::weak_oops_do(&is_alive, &keep_alive);
> 
> Same here, pass in &evacuate_followers?
> 
> I don't need to see a new webrev.
> 
> cheers,
> Per

Oh, I missed that.  Same thing in cms/parNewGeneration.cpp, I think.

Otherwise, looks good.

I don’t need a new webrev either.




More information about the hotspot-dev mailing list