RFR: Several cleanups
Roman Kennke
rkennke at redhat.com
Sat Sep 1 09:19:08 UTC 2018
Am 01.09.2018 um 10:52 schrieb Aleksey Shipilev:
> On 09/01/2018 10:29 AM, Roman Kennke wrote:
>> Am 01.09.2018 um 10:08 schrieb Aleksey Shipilev:
>>> On 08/31/2018 11:30 PM, Roman Kennke wrote:
>>>> I went over the diff between shenandoah/jdk and jdk/jdk and found some
>>>> obvious leftovers:
>>>>
>>>> http://cr.openjdk.java.net/~rkennke/cleanups/webrev.00/
>>>
>>> Looks good, except the bit in oop.cpp: are we actually safe doing HeapAccess (with barriers) for
>>> metadata? This came from the attempt to dodge barriers during oop_oop_iterate:
>>> http://hg.openjdk.java.net/shenandoah/jdk/rev/fd9d711bcc6d
>>
>> I think yes, because it uses AS_NO_KEEPALIVE.
>
> And that protects us from calling write barriers during puts?
This is about loads. Specifically it's about loads from Reference
objects. Normally this would keep-alive stuff, and thus (with Traversal)
go via WB. Not keeping alive (because it's only logging and not
escaping) protects us from this.
Thinking about it, Traversal should not keep-alive anything, ever. I
need to check this.
> I guess if tests are fine, we are fine too.
Yup, tests are fine.
(I almost always get one test timeout with ShenandoahStrDedupStress on
my slow machine. Can we get this fixed somehow?)
Roman
More information about the shenandoah-dev
mailing list