RFR (XXS): 8049051: Use of during_initial_mark_pause() in	G1CollectorPolicy::record_collection_pause_end() prevents use	of seperate object copy time prediction during marking
    Erik Helin 
    erik.helin at oracle.com
       
    Mon Jul  7 14:05:58 UTC 2014
    
    
  
On Wednesday 02 July 2014 14:33:10 PM Thomas Schatzl wrote:
> Hi all,
> 
>   some apparent bug in the G1 pause time prediction logic: when ending
> an initial mark pause, G1 is supposed to switch to different predictors
> for the object copy time.
> 
> Since the code that sets the flag to indicate to the prediction that the
> other predictor should be used for object copy time prediction wrongly
> reuses during_initial_mark_pause() that has been unconditionally set to
> false before, G1 never switches predictors.
> 
> The fix is to use the backup ("last_pause_included_initial_mark") value
> for during_initial_mark_pause() already used in several places in that
> method.
> 
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8049051
> 
> Webrev:
> http://cr.openjdk.java.net/~tschatzl/8049051/webrev/
Looks good, Reviewed!
Thanks,
Erik
> Testing:
> JPRT
> 
> Thanks,
>   Thomas
    
    
More information about the hotspot-gc-dev
mailing list