RFR (S) 8222766: Shenandoah: streamline post-LRB CAS barrier
Aleksey Shipilev
shade at redhat.com
Tue Apr 23 09:21:28 UTC 2019
On 4/23/19 11:10 AM, Roman Kennke wrote:
> Wait a second. We had this problem before: there *can* be from-space stores. Object-arraycopy can
> store from-space refs. It would only be temporary, because post-arraycopy would fix it, but I
> suspect that it can mess up the CAS. Right?
> I do have a patch that turns the arraycopy pre/copy/post sequence into a single arraycopy loop, that
> does indeed only ever store to-space refs. Maybe worth to finish it?
Yes. Maybe a simpler version that does the array fixups in-place before copying it. Please link that
RFE as the blocker for this one?
> Also, this is not really related to LRB. It would work just the same pre-LRB.
It kinda does. Before LRB we could store the to-space ptr on normal path: for example, storing the
reference that slipped through store-val barriers due to the concurrent race with evacuation
updaters. This new code relies on assumption that nothing ever stores to-space ptrs anywhere, as LRB
makes sure nothing is able to get the from-space ptr.
-Aleksey
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20190423/a478fc00/signature.asc>
More information about the hotspot-gc-dev
mailing list