ObjectSynchronizer iterate only in-use monitors?

David Holmes david.holmes at oracle.com
Thu May 11 10:57:13 UTC 2017


Sorry missed that Robbin already responded to this part.

David

On 11/05/2017 8:53 PM, David Holmes wrote:
> On 11/05/2017 6:32 PM, Claes Redestad wrote:
>> W.r.t. deprecating/removing the MonitorInUseLists flag: this flag has
>> been around for a long
>> time but was only recently made default in 9 (build 120) as a result of
>> analysis related to
>> JEP-143.
>>
>> The only downside I know of is a minuscule footprint increase, but there
>> might be unknown
>> bugs where an application could break with this flag enabled since it
>> hasn't seen wide usage.
>>
>> Having seen the flag in internal production use for several years makes
>> us confident it won't,
>> though, but you never know and it definitely doesn't hurt to have a way
>> to switch it back off,
>> at least during the course of 9.
>>
>> So... Deprecate in 10, remove flag in 11, remove internal code in ...
>> 11? (You can technically
>> remove the code using the flag in the same release that you deprecate
>> it, but I don't know --> is that frowned upon?)
>
> Deprecation of VM options means continuing to act on the option but
> issue a deprecation warning - so no you can't remove the code at the
> same time you deprecate it.
>
> Cheers,
> David
>
>
>>
>> Thanks!
>>
>> /Claes
>>
>> On 2017-05-11 10:12, Robbin Ehn wrote:
>>> Re-sending, since Davids reply got sorted into another folder,
>>> so I accidentally dropped GC list and missed David H replies, sorry
>>> about that.
>>>
>>> /Robbin
>>>
>>> On 05/11/2017 10:06 AM, Robbin Ehn wrote:
>>>> On 05/11/2017 10:01 AM, Aleksey Shipilev wrote:
>>>>> On 05/11/2017 09:51 AM, Roman Kennke wrote:
>>>>>> Am 11.05.2017 um 09:44 schrieb Robbin Ehn:
>>>>>>> Let me know how you plan to continue this!
>>>>>>
>>>>>> I can change the patch to hook up thread-local in-use-monitor
>>>>>> scanning
>>>>>> to Thread::oops_do() and have ObjectSynchronizer::oops_do() only scan
>>>>>> the gOmInUseList. I'd make it conditional on
>>>>>> -XX:+MonitorInUseLists, for
>>>>>> consistency and just in case anybody's ever turning this off, or
>>>>>> else we
>>>>>> should remove that flag? This change should transparently enable this
>>>>>> for all GCs. I'll also file a new enhancement bug for it. Does that
>>>>>> sound good?
>>>>>
>>>>> That sounds like a sane tactics to me.
>>>>
>>>> +1
>>>>
>>>> I guess first step is to deprecate it ? So we need a CSR for that.
>>>> (CSR is not yet available)
>>>> (assuming no objections here)
>>>>
>>>> Yes, enable for all GCs sounds great to me, maybe run some numbers on
>>>> them just in case.
>>>>
>>>> Thanks!
>>>>
>>>> /Robbin
>>>>
>>>>
>>>>>
>>>>> -Aleksey
>>>>>
>>>>>
>>


More information about the hotspot-runtime-dev mailing list