RFR: JDK-8188058: SATB queue set should initialize and manage their own locks

Roman Kennke rkennke at redhat.com
Wed Aug 8 13:51:32 UTC 2018


Currently there are 3 locks related to SATB queues, and they are
declared and defined globally in mutexLocker.hpp|cpp. They are only
initialized inside an if (UseG1GC) block. This is slightly problematic
when another GC (e.g. Shenandoah) also needs to use SATB and their
respective locks.
In any case, it seems much cleaner to make those locks private in
SATBQueueSet (or PtrQueueSet) and initialize them there and not expose
it to the world to begin with.

Bug:
https://bugs.openjdk.java.net/browse/JDK-8188058
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8188058/webrev.00/

It could probably be taken further and also do something similar to
DirtyCardQueue, but it is *much* more hairy and probably better handled
as separate refactoring task.

What do you think?
Can I get reviews?

Thanks, Roman



More information about the hotspot-gc-dev mailing list