RFR: 8058963: CollectorPolicy::satisfy_failed_metadata_allocation can avoid some safepoints
Erik Helin
erik.helin at oracle.com
Fri Sep 26 14:45:40 UTC 2014
Hi Mikael,
On 2014-09-26 10:06, Mikael Gerdin wrote:
> Hi Erik,
>
> On Tuesday 23 September 2014 17.15.58 Erik Helin wrote:
>> Hi all,
>>
>> this small change enables us to skip two possible safepoints in
>> CollectorPolicy::satisfy_failed_metadata_allocation:
>>
>> 1. When a thread continues a loop after having been stalled due to a
>> GC_locker initiated Full GC.
>> 2. When the VM_CollectForMetadata VM operation's prologue fails because
>> a full GC has already been run just prior to the CollectForMetadata VM
>> operation.
>>
>> The way this is done is simply by trying to allocate at the start of the
>> loop. This way, whenever we loop around and a full GC has happened, the
>> allocation request might be satisfied and we can do an early return.
>>
>> Webrev:
>> http://cr.openjdk.java.net/~ehelin/8058963/webrev.00/
>
> Change looks good.
Thanks!
Erik
> /Mikael
>
>>
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8058963
>>
>> Testing:
>> - JPRT
>> - Aurora:
>> - Kitchensink
>> - Weblogic+Medrec
>> - runThese
>> - vm.quick, regression, gc, compiler, runtime, parallel class loading,
>> metaspace, oom
>> - JTReg tests
>>
>> Thanks,
>> Erik
>
More information about the hotspot-gc-dev
mailing list