RFR: Access barriers for arraycopy
Aleksey Shipilev
shade at redhat.com
Tue Feb 20 18:06:28 UTC 2018
On 02/20/2018 07:01 PM, Roman Kennke wrote:
>> *) Since we are stabilizing sh/jdk*10*, I would prefer not to extend Access API here: when doing
>> this, we are risking unforeseen interactions with the rest of VM and other GCs. Do we actually need
>> the extensions to work correctly?
>
> If we don't want that in 10, they we should get the shenandoah/jdk
> into shape ASAP, because this is work that's important to get
> Shenandoah in shape for upstreaming ;-)
Yeah, but not before we stabilize sh/jdk10... :/
> It's not an extension of the Access API per se. It#s more like a bug
> fix. There's a call to Raw::arraycopy() that plain simply wrong: that
> call does not accept oop arguments. Since it was never used in
> upstream yet, the compiler never resolved and complains about that. I
> would like to get it into Shenandoah first to give it some exposure
> and testing, then bring it upstream as soon as possible. No, it
> doesn't not work/make sense without those shared code changes.
OK. So it is still required in sh/jdk10 for correctness. Better to put comments around the shared
code mentioning this is a bugfix that needs to be upstreamed.
>> *) Stray whitespace before "((T*)":
>>
>> 87 src = ((T*) (void*) src_obj) + src_offset;
>>
>> 103 src = ((T*) (void*) src_obj) + src_offset;
>
> Fixed.
> http://cr.openjdk.java.net/~rkennke/arraycopy-access-barriers/webrev.01/
OK, let's push it to sh/jdk10.
-Aleksey
More information about the shenandoah-dev
mailing list