RFR(XL): 8167108 - SMR and JavaThread Lifecycle

Daniel D. Daugherty daniel.daugherty at oracle.com
Mon Oct 9 21:23:23 UTC 2017

Many thanks to the folks that reviewed this internally and provided
much appreciated feedback:

- Daniel Daugherty
- David Holmes
- Erik Osterlund
- Jerry Thornbrugh
- Karen Kinnear
- Kim Barrett
- Robbin Ehn
- Serguei Spitsyn
- Stefan Karlson

Since there are three contributing authors, we have been reviewing
(and arguing over) each other's code. It has been an adventure!

Dan, Erik, and Robbin

On 10/9/17 1: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-compiler-dev mailing list