RFR: ShenandoahRootProcessor corrupts none Shenandoah VM_Operations

Aleksey Shipilev shade at redhat.com
Wed Jun 20 12:07:49 UTC 2018


On 06/20/2018 02:05 PM, Zhengyu Gu wrote:
> On 06/20/2018 03:37 AM, Aleksey Shipilev wrote:
>> On 06/20/2018 04:06 AM, Zhengyu Gu wrote:
>>> There are actually two bugs:
>>>
>>> 1. We did not clear bitmap before marking
>>> 2. We blindly cast VM_Operation to VM_ShenandoahOperation and set field, corrupts none Shenandoah
>>> VM_Operations, such as HeapDump and ThreadDump.
>>>
>>>
>>> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/vm_op_corruption/webrev.00/
>>
>> Looks good. Note that ShenandoahRootProcessor constructor also have accesses to
>> VM_ShenandoahOperation fields, and should also be protected with is_at_shenandoah_safepoint.
> Oops, how could I miss this one :-(
> 
> updated: http://cr.openjdk.java.net/~zgu/shenandoah/vm_op_corruption/webrev.01/

Yup, looks good.

-Aleksey



More information about the shenandoah-dev mailing list