disable JDK-8061553 optimization while JDK-8077392 is resolved (8079359)

Dmitry Samersoff dmitry.samersoff at oracle.com
Tue May 5 19:43:20 UTC 2015


Dan,

Looks OK for me.

-Dmitry

On 2015-05-05 22:29, Daniel D. Daugherty wrote:
> The URL was put in there by the JBS email sender...
> 
> Here's the real diff:
> 
> $ cat 8079359.diff.txt.00
> diff -r a0df4738688e src/share/vm/runtime/sharedRuntime.cpp
> --- a/src/share/vm/runtime/sharedRuntime.cpp
> +++ b/src/share/vm/runtime/sharedRuntime.cpp
> @@ -1793,7 +1793,9 @@ JRT_END
> 
>  // Handles the uncommon case in locking, i.e., contention or an
> inflated lock.
>  JRT_BLOCK_ENTRY(void,
> SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock*
> lock, JavaThread* thread))
> -  if (!SafepointSynchronize::is_synchronizing()) {
> +  // Disable ObjectSynchronizer::quick_enter() in default config
> +  // until JDK-8077392 is resolved.
> +  if ((SyncFlags & 256) != 0 &&
> !SafepointSynchronize::is_synchronizing()) {
>      // Only try quick_enter() if we're not trying to reach a safepoint
>      // so that the calling thread reaches the safepoint more quickly.
>      if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
> 
> 
> Dan
> 
> On 5/5/15 1:00 PM, Dmitry Samersoff wrote:
>> Dan,
>>
>> Please, don't insert URL
>> <https://bugs.openjdk.java.net/browse/JDK-8077392> in the code. I think
>> just a CR number is enough.
>>
>> -Dmitry
>>
>> On 2015-05-05 20:06, Daniel D. Daugherty wrote:
>>> Greetings,
>>>
>>> The following bug fix:
>>>
>>>      JDK-8061553 Contended Locking fast enter bucket
>>>
>>> is causing intermittent hangs in JDK9-dev testing. That hang is
>>> being tracked by the following bug:
>>>
>>>      JDK-8077392 Stream fork/join tasks occasionally fail to complete
>>>
>>> In order to make the JDK9-dev nightly testing more stable,
>>> I would like to disable the JDK-8061553 optimization until
>>> I resolve JDK-8077392.
>>>
>>> I'm targeting this fix for JDK9-dev directly instead of going
>>> through the usual process of:
>>>
>>>      push fix -> RT_Baseline
>>>      RT_Baseline -> Main_Baseline
>>>      Main_Baseline -> JDK9-dev
>>>
>>> in order to get JDK9-dev stable more quickly.
>>>
>>> Lana and Alejandro, please let me know if either of you has
>>> a problem with this out-of-band work around.
>>>
>>> Dan
>>>
>>>
>>>
>>> -------- Original Message --------
>>> Subject:     [JBS] (JDK-8079359) disable JDK-8061553 optimization while
>>> JDK-8077392 is resolved
>>> Date:     Tue, 5 May 2015 16:59:40 +0000 (UTC)
>>> From:     Daniel Daugherty (JBS) <do-not-reply at openjdk.java.net>
>>> To:     daniel.daugherty at oracle.com
>>>
>>>
>>>
>>> Daniel Daugherty
>>> <https://bugs.openjdk.java.net/secure/ViewProfile.jspa?name=dcubed>
>>> started work on Bug JDK-8079359
>>> <https://bugs.openjdk.java.net/browse/JDK-8079359>
>>> *disable JDK-8061553 optimization while JDK-8077392 is resolved*
>>> <https://bugs.openjdk.java.net/browse/JDK-8079359>
>>>
>>>
>>>      Here is the proposed change:
>>>
>>> $ hg diff
>>> diff -r a0df4738688e src/share/vm/runtime/sharedRuntime.cpp
>>> --- a/src/share/vm/runtime/sharedRuntime.cpp Sat May 02 00:16:29 2015
>>> -0700
>>> +++ b/src/share/vm/runtime/sharedRuntime.cpp Tue May 05 09:57:09 2015
>>> -0700
>>> @@ -1793,7 +1793,9 @@ JRT_END
>>>
>>>   // Handles the uncommon case in locking, i.e., contention or an
>>> inflated lock.
>>>   JRT_BLOCK_ENTRY(void,
>>> SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock*
>>> lock, JavaThread* thread))
>>> - if (!SafepointSynchronize::is_synchronizing()) {
>>> + // Disable ObjectSynchronizer::quick_enter() in default config
>>> + // until JDK-8077392
>>> <https://bugs.openjdk.java.net/browse/JDK-8077392> is resolved.
>>> + if ((SyncFlags & 256) != 0 &&
>>> !SafepointSynchronize::is_synchronizing()) {
>>>       // Only try quick_enter() if we're not trying to reach a safepoint
>>>       // so that the calling thread reaches the safepoint more quickly.
>>>       if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;
>>> *Change By:*     Daniel Daugherty
>>> <https://bugs.openjdk.java.net/secure/ViewProfile.jspa?name=dcubed>
>>> (2015-05-05 09:57)
>>> *Status:*     Open In Progress
>>> *Understanding:*     Cause Known
>>>
>>> This message is automatically generated by JIRA.
>>> If you think it was sent incorrectly, please contact your JIRA
>>> administrators
>>> <https://bugs.openjdk.java.net/secure/ContactAdministrators%21default.jspa>
>>>
>>> For more information on JIRA, see:
>>> http://www.atlassian.com/software/jira
>>>
>>>
>>>
>>
> 


-- 
Dmitry Samersoff
Oracle Java development team, Saint Petersburg, Russia
* I would love to change the world, but they won't give me the sources.


More information about the hotspot-runtime-dev mailing list