RFR(S): JDK-8028093 - Initial young size is smaller than minimum young size
Jon Masamitsu
jon.masamitsu at oracle.com
Mon Nov 11 18:14:00 UTC 2013
On 11/9/13 3:17 PM, Jesper Wilhelmsson wrote:
> Hi,
>
> Can I have a couple of reviews of this small bugfix.
>
> Bug JDK-8028093: https://bugs.openjdk.java.net/browse/JDK-8028093
>
> The problem is that TwoGenerationCollectorPolicy::adjust_gen0_sizes()
> is called with the wrong argument in one place. The last argument
> should always be the value of _min_gen1_size, but in one call it is
> the _initial_gen1_size.
>
> Since these variables are class local I see no reason to take
> _min_gen1_size as an argument at all. Apparently it is error prone.
> The proposed fix is therefore to remove the argument and use
> _min_gen1_size directly in adjust_gen0_sizes().
I've been looking at recent versions of the
TwoGenerationCollectorPolicy::initialize_size_info()
and it seems like the change that causes the assertion failure was from
_min_gen1_size = OldSize;
to
_min_gen1_size = MIN2(OldSize, _min_heap_byte_size - _min_gen0_size);
Is that right? Before that change _min_gen_size and _initial_gen1_size
were the
same value in the call path where adjust_gen0_sizes() is called.
Jon
>
> Webrev: http://cr.openjdk.java.net/~jwilhelm/8028093/webrev/
>
> Thanks!
> /Jesper
More information about the hotspot-gc-dev
mailing list