RFR (L): 8058354: SPECjvm2008-Derby -2.7% performance regression on Solaris-X64 starting with 9-b29

Jon Masamitsu jon.masamitsu at oracle.com
Thu Mar 26 20:43:24 UTC 2015



On 03/26/2015 01:47 AM, Thomas Schatzl wrote:
> Hi Jon,
>
> On Wed, 2015-03-25 at 20:47 -0700, Jon Masamitsu wrote:
>> Thomas,
>>
>> Haven't gotten very far but let me send you one question.
>>
>> http://cr.openjdk.java.net/~tschatzl/8058354/webrev.2_to_3/src/share/vm/gc_implementation/g1/g1PageBasedVirtualSpace.cpp.frames.html
>>
>>>    157 void G1PageBasedVirtualSpace::commit_tail() {
>>>    158   char* const aligned_end_address = (char*)align_ptr_down(_high_boundary, _page_size);
>>>    159   size_t const tail_size = pointer_delta(_high_boundary, aligned_end_address, sizeof(char));
>> Should there be a check that tail_size is not 0 before attempting to
>> commit it?
>    commit_tail() can only be called if is_last_page_partial() is true,
> i.e. tail_size > 0. I can add an assert for that.

Please do add the assert.  commit_tail() is currently only called
if is_last_page_partial() is true, right?  But could be called in a
different context where that is not true.

Jon
>
> Thanks,
>    Thomas
>
>




More information about the hotspot-gc-dev mailing list