RFR: Mixed evacuation [v2]
Kelvin Nilsen
kdnilsen at openjdk.java.net
Wed Apr 14 16:53:35 UTC 2021
On Fri, 9 Apr 2021 12:57:30 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:
>> Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Chasing bug during prepare_for_old_collection
>>
>> One bug fix, a few cosmetic improvements, a change in loop structure to possibly avoid a gcc
>> optimization error.
>
> src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp line 439:
>
>> 437: // Instead, skip to the following marked object, as indicated by the first following mark bit in
>> 438: // marking_context.
>> 439: int size = obj->size();
>
> I am not sure that it is safe to walk dead oops, e.g. their classes might have been unloaded. I suggest to use marking_context->get_next_marked_addr() instead.
I've fixed this now.
> src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp line 510:
>
>> 508: // Instead, skip to the following marked object, as indicated by the first following mark bit in
>> 509: // marking_context.
>> 510: int size = obj->size();
>
> Same as above
I've also fixed this now.
> src/hotspot/share/gc/shenandoah/shenandoahOldGC.cpp line 167:
>
>> 165: //
>> 166: // TraceCollectorStats tcs(heap->monitoring_support()->concurrent_collection_counters());
>> 167: // EventMark em("%s", msg);
>
> Yes, I think we want them.
I've uncommented this so it is now included.
-------------
PR: https://git.openjdk.java.net/shenandoah/pull/29
More information about the shenandoah-dev
mailing list