RFR: 8029186: regression-hotspot nightly failure: assert(FLAG_IS_DEFAULT(MaxNewSize) || MaxNewSize < MaxHeapSize) failed
Stefan Johansson
stefan.johansson at oracle.com
Thu Apr 3 09:41:05 UTC 2014
Thanks Jon and Jesper!
Stefan
On 2014-04-02 19:06, Jesper Wilhelmsson wrote:
> Ship it!
> /Jesper
>
> Jon Masamitsu skrev 2/4/14 18:39:
>>
>> On 4/2/14 4:20 AM, Stefan Johansson wrote:
>>> I got a second review from Jon Masamitsu, he had some comments and
>>> these have
>>> been fixed.
>>>
>>> Here's an incremental webrev:
>>> http://cr.openjdk.java.net/~sjohanss/8029186/webrev.01-02/
>>>
>>> Here's the full change:
>>> http://cr.openjdk.java.net/~sjohanss/8029186/webrev.02/
>>>
>>> Thanks Jon and Jesper for reviewing this.
>>
>> Thanks.
>>
>> Reviewed.
>>
>> Jon
>>
>>>
>>> Cheers,
>>> Stefan
>>>
>>> On 2014-03-26 11:48, Stefan Johansson wrote:
>>>> Thanks Jesper for looking at this.
>>>>
>>>> I actually found an issue myself when going over the code. The
>>>> problem is in
>>>> initialize_flags for the TwoGenerationalPolicy, where I verify that
>>>> the
>>>> desired new_size is within the allowed bounds. I realized that I
>>>> need to
>>>> check against the flag MaxNewSize since the member might not have been
>>>> initialized yet. Below is the diff for the change and an updated
>>>> webrev can
>>>> be found here:
>>>> http://cr.openjdk.java.net/~sjohanss/8029186/webrev.01/
>>>>
>>>> ---
>>>> @@ -422,7 +422,9 @@
>>>> if (FLAG_IS_CMDLINE(OldSize) && !FLAG_IS_CMDLINE(NewSize)) {
>>>> if (OldSize < _initial_heap_byte_size) {
>>>> size_t new_size = _initial_heap_byte_size - OldSize;
>>>> - if (new_size >= _min_gen0_size && new_size <= _max_gen0_size) {
>>>> + // Need to compare against the flag value for max since
>>>> _max_gen0_size
>>>> + // might not have been set yet.
>>>> + if (new_size >= _min_gen0_size && new_size <= MaxNewSize) {
>>>> FLAG_SET_ERGO(uintx, NewSize, new_size);
>>>> _initial_gen0_size = NewSize;
>>>> }
>>>> ---
>>>>
>>>> Thanks,
>>>> Stefan
>>>>
>>>> On 2014-03-25 17:33, Jesper Wilhelmsson wrote:
>>>>> Ship it!
>>>>> /Jesper
>>>>>
>>>>> Stefan Johansson skrev 25/3/14 16:29:
>>>>>> Hi,
>>>>>>
>>>>>> Please review this fix for:
>>>>>> https://bugs.openjdk.java.net/browse/JDK-8029186
>>>>>>
>>>>>> Webrev:
>>>>>> http://cr.openjdk.java.net/~sjohanss/8029186/webrev.00/
>>>>>>
>>>>>> Summary:
>>>>>> There have been a lot of bugs due to corner cases with heap
>>>>>> sizing flags. This
>>>>>> change strives to fix this particular problem and at the same
>>>>>> time somewhat
>>>>>> simplify the collector policy. I've also added some assertions to
>>>>>> ensure that
>>>>>> the sizing of the heap is more correct.
>>>>>>
>>>>>> Testing:
>>>>>> * JPRT sanity and JTREG
>>>>>> * Adhoc aurora run for tmtools tests
>>>>>> * Script that verifies that we don't get assertions during
>>>>>> startup for
>>>>>> different
>>>>>> combinations of NewSize, MaxNewSize, OldSize, Xms and Xmx.
>>>>>>
>>>>>> Thanks,
>>>>>> StefanJ
>>>>
>>>
>>
More information about the hotspot-gc-dev
mailing list