8034761: Remove the do_code_roots parameter from process_strong_roots

Jon Masamitsu jon.masamitsu at oracle.com
Wed Feb 12 19:40:34 UTC 2014

On 2/12/2014 1:43 AM, Stefan Karlsson wrote:
> Hi all,
> Please, review this patch to remove the do_code_roots parameter from 
> SharedHeap::process_strong_roots.
> The changes done are:
> - Change the code to rely on the ScannningOption so parameter instead 
> of do_code_roots.
> - Change GenMarkSweep and G1MarkSweep to adjust the code roots with 
> the help of process_strong_roots instead of doing it as a separate 
> phase after process_strong_roots.
> - Removed the unused FalseClosure.
> After this patch the adjust phase of the GenMarkSweep and G1MarkSweep 
> will use the generic code in process_strong_roots, which mark/claim 
> the nmethods before they are processed. Before the patch these two 
> Serial Old GC adjust phases skipped the mark/claim part. No noticeable 
> Serial Old GC time increases were found when this patch was 
> performance tested.

Does this mean ("adjust phase ...") that the "mark/claim"  does not have 
any affect
on later processing?  Or actually does nothing (even though the closures
are applied)?  Which benchmarks did you use for performance testing?

> This cleanup is needed/wanted for G1 Class Unloading.
> Webrev:
> http://cr.openjdk.java.net/~stefank/8034761/webrev.00/
> RFE:
> https://bugs.openjdk.java.net/browse/JDK-8034761
> thanks,
> StefanK

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20140212/172737c6/attachment.htm>

More information about the hotspot-gc-dev mailing list