RFR(XL): 8167108 - SMR and JavaThread Lifecycle

Daniel D. Daugherty daniel.daugherty at oracle.com
Wed Nov 15 20:32:13 UTC 2017


Greetings,

Robbin rebased the project last night/this morning to merge with Thread
Local Handshakes (TLH) and also picked up additional changesets up thru:

> Changeset: fa736014cf28
> Author:    cjplummer
> Date:      2017-11-14 18:08 -0800
> URL:http://hg.openjdk.java.net/jdk/hs/rev/fa736014cf28
>
> 8191049: Add alternate version of pns() that is callable from within hotspot source
> Summary: added pns2() to debug.cpp
> Reviewed-by: stuefe, gthornbr

This is the first time we've rebased the project to bits that are this
fresh (< 12 hours old at rebase time). We've done this because we think
we're done with this project and are in the final review-change-retest
cycle(s)... In other words, we're not planning on making any more major
changes for this project... :-)

*** Time for code reviewers to chime in on this thread! ***

Here is the updated full webrev:

http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-08-full/

Here's is the delta webrev from the 2017.11.10 rebase:

http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-08-delta/

Dan has submitted the bits for the usual Mach5 tier[1-5] testing
(and the new baseline also)...

We're expecting this round to be a little noisier than usual because
we did not rebase on a PIT snapshot so the new baseline has not been
through Jesper's usual care-and-feeding of integration_blockers, etc.

We welcome comments, suggestions and feedback.

Dan, Erik and Robbin


On 11/14/17 4:48 PM, Daniel D. Daugherty wrote:
> Greetings,
>
> I rebased the project to the 2017.11.10 jdk/hs PIT snapshot.
> (Yes, we're playing chase-the-repo...)
>
> Here is the updated full webrev:
>
> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-07-full/
>
> Unlike the previous rebase, there were no changes required to the
> open code to get the rebased bits to build so there is no delta
> webrev.
>
> These bits have been run through JPRT and I've submitted the usual
> Mach5 tier[1-5] test run...
>
> We welcome comments, suggestions and feedback.
>
> Dan, Erik and Robbin
>
>
> On 11/13/17 12:30 PM, Daniel D. Daugherty wrote:
>> Greetings,
>>
>> I rebased the project to the 2017.10.26 jdk10/hs PIT snapshot.
>>
>> Here are the updated webrevs:
>>
>> Here's the mq comment for the change:
>>
>>   Rebase to 2017.10.25 PIT snapshot.
>>
>> Here is the full webrev:
>>
>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-06-full/
>>
>> And here is the delta webrev:
>>
>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-06-delta/
>>
>> I ran the above bits throught Mach5 tier[1-5] testing over the holiday
>> weekend. Didn't see any issues in a quick look. Going to take a closer
>> look today.
>>
>> We welcome comments, suggestions and feedback.
>>
>> Dan, Erik and Robbin
>>
>>
>> On 11/8/17 1:05 PM, Daniel D. Daugherty wrote:
>>> Greetings,
>>>
>>> Resolving one of the code review comments (from both Stefan K and 
>>> Coleen)
>>> on jdk10-04-full required quite a few changes so it is being done as a
>>> standalone patch and corresponding webrevs:
>>>
>>> Here's the mq comment for the change:
>>>
>>>   stefank, coleenp CR - refactor most JavaThreadIterator usage to use
>>>     JavaThreadIteratorWithHandle.
>>>
>>> Here is the full webrev:
>>>
>>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-05-full/
>>>
>>> And here is the delta webrev:
>>>
>>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-05-delta/
>>>
>>> We welcome comments, suggestions and feedback.
>>>
>>> Dan, Erik and Robbin
>>>
>>>
>>> On 10/9/17 3:41 PM, Daniel D. Daugherty wrote:
>>>> Greetings,
>>>>
>>>> We have a (eXtra Large) fix for the following bug:
>>>>
>>>> 8167108 inconsistent handling of SR_lock can lead to crashes
>>>> https://bugs.openjdk.java.net/browse/JDK-8167108
>>>>
>>>> This fix adds a Safe Memory Reclamation (SMR) mechanism based on
>>>> Hazard Pointers to manage JavaThread lifecycle.
>>>>
>>>> Here's a PDF for the internal wiki that we've been using to describe
>>>> and track the work on this project:
>>>>
>>>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/SMR_and_JavaThread_Lifecycle-JDK10-04.pdf 
>>>>
>>>>
>>>> Dan has noticed that the indenting is wrong in some of the code quotes
>>>> in the PDF that are not present in the internal wiki. We don't have a
>>>> solution for that problem yet.
>>>>
>>>> Here's the webrev for current JDK10 version of this fix:
>>>>
>>>> http://cr.openjdk.java.net/~dcubed/8167108-webrev/jdk10-04-full
>>>>
>>>> This fix has been run through many rounds of JPRT and Mach5 tier[2-5]
>>>> testing, additional stress testing on Dan's Solaris X64 server, and
>>>> additional testing on Erik and Robbin's machines.
>>>>
>>>> We welcome comments, suggestions and feedback.
>>>>
>>>> Daniel Daugherty
>>>> Erik Osterlund
>>>> Robbin Ehn
>>>>
>>>
>>>
>>
>>
>
>



More information about the hotspot-gc-dev mailing list