RFR (S/M): 8159440: Move marking of promoted objects during initial mark into the concurrent phas

Kim Barrett kim.barrett at oracle.com
Tue Dec 4 19:31:18 UTC 2018


> On Dec 4, 2018, at 5:08 AM, Thomas Schatzl <thomas.schatzl at oracle.com> wrote:
> 
> Hi,
> 
> On Mon, 2018-12-03 at 23:38 -0500, Kim Barrett wrote:
>>> On Dec 3, 2018, at 9:44 AM, Thomas Schatzl <
>>> thomas.schatzl at oracle.com> wrote:
>>> http://cr.openjdk.java.net/~tschatzl/8159440/webrev.0_to_1/ (diff)
>>> http://cr.openjdk.java.net/~tschatzl/8159440/webrev.1/ (full)
>> 
>> Nice.  No need for a new webrev for the comments below.
>> 
>> -------------------------------------------------------------------
>> -----------
>> src/hotspot/share/gc/g1/g1ConcurrentMark.inline.hpp
>>  79     add_to_liveness(worker_id, obj, obj->size());
>> 
>> Why the change to no longer use the passed in obj_size argument?
>> 
>> If this is correct, then we're no longer using the obj_size argument.
>> It looks like no caller passes that argument, instead letting it
>> default to 0.  So the argument should just be eliminated.  I'm okay
>> with that being a separate cleanup.
> 
> We are no longer using the argument. I removed it.

But you didn’t update the comment for mark_in_next_bitmap, which refers to that argument.
These lines should be deleted:
src/hotspot/share/gc/g1/g1ConcurrentMark.hpp
 599   // If the passed obj_size is zero, it is recalculated from the given object if
 600   // needed. This is to be as lazy as possible with accessing the object's size.

> http://cr.openjdk.java.net/~tschatzl/8159440/webrev.1_to_2/ (diff)
> http://cr.openjdk.java.net/~tschatzl/8159440/webrev.2/ (full)
> 
> Thanks,
>  Thomas

Thanks for also tidying up the G1CMRootRegions construction vs reset protocol.

Looks good.  I don’t need a new webrev for the above comment removal.





More information about the hotspot-gc-dev mailing list