United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-7023069 G1: Introduce symmetric locking in the slow allocation path
JDK-7023069 : G1: Introduce symmetric locking in the slow allocation path

Details
Type:
Enhancement
Submit Date:
2011-02-28
Status:
Closed
Updated Date:
2011-04-24
Project Name:
JDK
Resolved Date:
2011-04-24
Component:
hotspot
OS:
generic
Sub-Component:
gc
CPU:
generic
Priority:
P4
Resolution:
Fixed
Affected Versions:
hs21
Fixed Versions:
hs21 (b08)

Related Reports
Backport:
Relates:
Relates:

Sub Tasks

Description
G1's slow allocation path uses an unusual asymmetric locking scheme according to which some of the methods assume that they have the heap lock when called and they either release the heap lock when returning a non-NULL result or retain it when returning a NULL result.

The last major changes to this code were done as part of CR 6974966 (G1: unnecessary direct-to-old allocations) but the above asymmetric locking scheme was retained.

I've had a lot of encouragement to replace it with a symmetric locking scheme to make long-term maintenance of this code simpler.

                                    

Comments
EVALUATION

See Description.
                                     
2011-02-28
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/abdfc822206f
                                     
2011-03-30



Hardware and Software, Engineered to Work Together