RFR: 8238867: Improve G1DirtyCardQueueSet::Queue::pop
Kim Barrett
kim.barrett at oracle.com
Wed Feb 12 00:45:33 UTC 2020
Please review this change to G1DirtyCardQueueSet::Queue::pop.
Previously, if there was exactly one element in the queue, a pop
operation could not return it, because doing so could break invariants
for concurrent operations. Now, if there is one element and there are
concurrent pop operations, one of those operations will win. Note
that there are still races between pop and push/append that may
prevent the pop operation from obtaining an element.
CR:
https://bugs.openjdk.java.net/browse/JDK-8238867
Webrev:
https://cr.openjdk.java.net/~kbarrett/8238867/open.00/
Testing:
mach5 tier1-3.
mach5 tier1-5 (only linux-x64) in conjunction with other changes.
Some performance testing didn't find any unexpected differences.
More information about the hotspot-gc-dev
mailing list