annotate ASSEMBLY_EXCEPTION @ 1842:6e0aac35bfa9

6980838: G1: guarantee(false) failed: thread has an unexpected active value in its SATB queue Summary: Under certain circumstances a safepoint could happen between a JavaThread object being created and that object being added to the Java threads list. This could cause the active field of that thread's SATB queue to get out-of-sync with respect to the other Java threads. The solution is to activate the SATB queue, when necessary, before adding the thread to the Java threads list, not when the JavaThread object is created. The changeset also includes a small fix to rename the surrogate locker thread from "Surrogate Locker Thread (CMS)" to "Surrogate Locker Thread (Concurrent GC)" since it's also used in G1. Reviewed-by: iveresov, ysr, johnc, jcoomes
author tonyp
date Fri, 01 Oct 2010 16:43:05 -0400
parents c18cbe5936b8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a61af66fc99e Initial load
duke
parents:
diff changeset
1
a61af66fc99e Initial load
duke
parents:
diff changeset
2 OPENJDK ASSEMBLY EXCEPTION
a61af66fc99e Initial load
duke
parents:
diff changeset
3
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
4 The OpenJDK source code made available by Oracle at openjdk.java.net and
0
a61af66fc99e Initial load
duke
parents:
diff changeset
5 openjdk.dev.java.net ("OpenJDK Code") is distributed under the terms of the
a61af66fc99e Initial load
duke
parents:
diff changeset
6 GNU General Public License <http://www.gnu.org/copyleft/gpl.html> version 2
a61af66fc99e Initial load
duke
parents:
diff changeset
7 only ("GPL2"), with the following clarification and special exception.
a61af66fc99e Initial load
duke
parents:
diff changeset
8
a61af66fc99e Initial load
duke
parents:
diff changeset
9 Linking this OpenJDK Code statically or dynamically with other code
a61af66fc99e Initial load
duke
parents:
diff changeset
10 is making a combined work based on this library. Thus, the terms
a61af66fc99e Initial load
duke
parents:
diff changeset
11 and conditions of GPL2 cover the whole combination.
a61af66fc99e Initial load
duke
parents:
diff changeset
12
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
13 As a special exception, Oracle gives you permission to link this
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
14 OpenJDK Code with certain code licensed by Oracle as indicated at
0
a61af66fc99e Initial load
duke
parents:
diff changeset
15 http://openjdk.java.net/legal/exception-modules-2007-05-08.html
a61af66fc99e Initial load
duke
parents:
diff changeset
16 ("Designated Exception Modules") to produce an executable,
a61af66fc99e Initial load
duke
parents:
diff changeset
17 regardless of the license terms of the Designated Exception Modules,
a61af66fc99e Initial load
duke
parents:
diff changeset
18 and to copy and distribute the resulting executable under GPL2,
a61af66fc99e Initial load
duke
parents:
diff changeset
19 provided that the Designated Exception Modules continue to be
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
20 governed by the licenses under which they were offered by Oracle.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
21
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
22 As such, it allows licensees and sublicensees of Oracle's GPL2 OpenJDK Code to
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
23 build an executable that includes those portions of necessary code that Oracle
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 0
diff changeset
24 could not provide under GPL2 (or that Oracle has provided under GPL2 with the
0
a61af66fc99e Initial load
duke
parents:
diff changeset
25 Classpath exception). If you modify or add to the OpenJDK code, that new
a61af66fc99e Initial load
duke
parents:
diff changeset
26 GPL2 code may still be combined with Designated Exception Modules if the
a61af66fc99e Initial load
duke
parents:
diff changeset
27 new code is made subject to this exception by its copyright holder.