RFR(L): 8151601: Cleanup locking of the Reference pending list (original) (raw)

Bengt Rutisson bengt.rutisson at oracle.com
Tue Mar 15 11:05:49 UTC 2016


On 2016-03-15 12:02, Per Liden wrote:

Hi,

I got some minor comments from StefanK offline, here's an updated webrev: Incremental: http://cr.openjdk.java.net/~pliden/8151601/webrev.diff-0vs1/ Full: http://cr.openjdk.java.net/~pliden/8151601/webrev.1/

Still looks good to me.

Bengt

thanks, Per On 2016-03-10 16:53, Per Liden wrote: Hi,

The SurrogateLockerThread is currently used by both G1 and CMS to lock the Reference pending list. However, there's quite a bit of unnecessary code duplication and special case handling in this area. This patch is an attempt to clean this up. The main changes: - All locking of the pending list is how done through the new ReferencePendingListLocker. This locker delegates to a locker thread if needed. - The locking related code in instanceRefKlass was moved to the new ReferencePendingListLocker. - What used to be the SurrogateLockerThread is now the ReferencePendingListLockerThread. - The new virtual function CollectedHeap::needsreferencependinglistlockerthread() indicates if a collector needs a locker thread. G1 and CMS returns true here. Bug: https://bugs.openjdk.java.net/browse/JDK-8151601 Webrev: http://cr.openjdk.java.net/~pliden/8151601/webrev.0/ Testing: jprt, vm.gc cheers, Per



More information about the hotspot-gc-dev mailing list