RFR (XS): JDK-8076614: Add comment to ClearNoncleanCardWrapper::do_MemRegion()

Stefan Karlsson stefan.karlsson at oracle.com
Wed Apr 8 07:36:33 UTC 2015



On 2015-04-02 23:35, Kim Barrett wrote:
> On Apr 2, 2015, at 4:53 PM, Bengt Rutisson <bengt.rutisson at oracle.com> wrote:
>>
>> Hi all,
>>
>> Can I have a couple of reviews to add this comment to cardTableRS.cpp?
>>
>> https://bugs.openjdk.java.net/browse/JDK-8076614
>>
>> This was discussed during the review of "JDK-8076241: Remove unused methods mod_card_iterate()    and non_clean_card_iterate_serial()", see:
>>
>> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2015-April/012661.html
>>
>> For JDK-8076241 I removed this comment because it didn't make sense anymore at the place where it used to be. We now agree that a better place for
>> it is close to the ClearNoncleanCardWrapper::do_MemRegion() method because that still does backwards iteration of the card table.
>>
>> Since I am only adding a comment I think a diff is easier to review than a webrev:
>>
>> diff --git a/src/share/vm/memory/cardTableRS.cpp b/src/share/vm/memory/cardTableRS.cpp
>> --- a/src/share/vm/memory/cardTableRS.cpp
>> +++ b/src/share/vm/memory/cardTableRS.cpp
>> @@ -176,7 +176,10 @@
>> bool ClearNoncleanCardWrapper::is_word_aligned(jbyte* entry) {
>> return (((intptr_t)entry) & (BytesPerWord-1)) == 0;
>> }
>> -
>> +// The regions are visited in *decreasing* address order.
>> +// This order aids with imprecise card marking, where a dirty
>> +// card may cause scanning, and summarization marking, of objects
>> +// that extend onto subsequent cards.
>> void ClearNoncleanCardWrapper::do_MemRegion(MemRegion mr) {
>> assert(mr.word_size() > 0, "Error");
>> assert(_ct->is_aligned(mr.start()), "mr.start() should be card aligned”);
> Looks good.

OK.

StefanK

>



More information about the hotspot-gc-dev mailing list