ASSEMBLY_EXCEPTION

Mon, 05 Apr 2010 12:19:22 -0400

author
tonyp
date
Mon, 05 Apr 2010 12:19:22 -0400
changeset 1793
72f725c5a7be
parent 435
a61af66fc99e
child 1907
c18cbe5936b8
permissions
-rw-r--r--

6940310: G1: MT-unsafe calls to CM::region_stack_push() / CM::region_stack_pop()
Summary: Calling the methods region_stack_push() and region_stack_pop() concurrent is not MT-safe. The assumption is that we will only call region_stack_push() during a GC pause and region_stack_pop() during marking. Unfortunately, we also call region_stack_push() during marking which seems to be introducing subtle marking failures. This change introduces lock-based methods for pushing / popping to be called during marking.
Reviewed-by: iveresov, johnc

duke@435 1
duke@435 2 OPENJDK ASSEMBLY EXCEPTION
duke@435 3
duke@435 4 The OpenJDK source code made available by Sun at openjdk.java.net and
duke@435 5 openjdk.dev.java.net ("OpenJDK Code") is distributed under the terms of the
duke@435 6 GNU General Public License <http://www.gnu.org/copyleft/gpl.html> version 2
duke@435 7 only ("GPL2"), with the following clarification and special exception.
duke@435 8
duke@435 9 Linking this OpenJDK Code statically or dynamically with other code
duke@435 10 is making a combined work based on this library. Thus, the terms
duke@435 11 and conditions of GPL2 cover the whole combination.
duke@435 12
duke@435 13 As a special exception, Sun gives you permission to link this
duke@435 14 OpenJDK Code with certain code licensed by Sun as indicated at
duke@435 15 http://openjdk.java.net/legal/exception-modules-2007-05-08.html
duke@435 16 ("Designated Exception Modules") to produce an executable,
duke@435 17 regardless of the license terms of the Designated Exception Modules,
duke@435 18 and to copy and distribute the resulting executable under GPL2,
duke@435 19 provided that the Designated Exception Modules continue to be
duke@435 20 governed by the licenses under which they were offered by Sun.
duke@435 21
duke@435 22 As such, it allows licensees and sublicensees of Sun's GPL2 OpenJDK Code to
duke@435 23 build an executable that includes those portions of necessary code that Sun
duke@435 24 could not provide under GPL2 (or that Sun has provided under GPL2 with the
duke@435 25 Classpath exception). If you modify or add to the OpenJDK code, that new
duke@435 26 GPL2 code may still be combined with Designated Exception Modules if the
duke@435 27 new code is made subject to this exception by its copyright holder.

mercurial