RFR: 8181859: Monitor deflation is not checked in cleanup path
Robbin Ehn
robbin.ehn at oracle.com
Wed Jun 14 09:40:46 UTC 2017
Hi Aleksey,
On 06/14/2017 11:14 AM, Aleksey Shipilev wrote:
> On 06/14/2017 11:07 AM, Robbin Ehn wrote:
>> Full:
>> http://cr.openjdk.java.net/~rehn/8181859/2/webrev/
>
> Looks good to me.
Thanks!
>
> I would paranoidally add parentheses in this expression, but your choice.
>
> return MonitorUsedDeflationThreshold > 0 && (monitors_used * 100LL) /
> gMonitorPopulation > MonitorUsedDeflationThreshold;
Discussed locally and this was suggested (looks good to me):
static bool monitors_used_above_threshold() {
int monitors_used = gMonitorPopulation - gMonitorFreeCount;
int monitor_useage = (monitors_used * 100LL) / gMonitorPopulation;
return monitor_useage > MonitorUsedDeflationThreshold;
}
bool ObjectSynchronizer::is_cleanup_needed() {
if (MonitorUsedDeflationThreshold > 0) {
return monitors_used_above_threshold();
}
return false;
}
Carsten, Aleksey, are you good with this?
Full: http://cr.openjdk.java.net/~rehn/8181859/3/webrev/
Thanks, Robbin
>
> Thanks,
> -Aleksey
>
>
More information about the hotspot-runtime-dev
mailing list