RFR: 8143587: G1 crashes with humongous object of size that almost fills an heap region

Jon Masamitsu jon.masamitsu at oracle.com
Wed Nov 25 16:23:11 UTC 2015

On 11/25/2015 1:31 AM, David Lindholm wrote:
> Jon,
> Sorry, I don't really understand. The filler objects are needed to fix 
> "8138681: Runtime.getFreeMemory() reports wrong value after humongous 
> allocation."


If you were going to set the top of the H-region to the end of the
H-object in cases where there was not enough room for a filler
object, I wondered why you do not do that all the time (skip
the filler object).  I see from 8138681 that such a strategy does
not work because the free space is then over estimated.

So answer to my question is "no".

I've not looked at all the details of the fix yet.  Don't wait
for me if you get other reviews.


> Thanks,
> David
> On 2015-11-24 19:54, Jon Masamitsu wrote:
>> David,
>> Could be always just set top as you've done for the case where there
>> isn't room for a filler object at the end of a humongous region?  And
>>  never use a filler object there?
>> Jon
>> On 11/24/2015 04:50 AM, David Lindholm wrote:
>>> Hi,
>>> After offline discussions with Mikael I have updated the webrev (and 
>>> the title of the bug).
>>> Webrev: http://cr.openjdk.java.net/~david/JDK-8143587/webrev.01/
>>> Thanks,
>>> David
>>> On 2015-11-24 11:58, David Lindholm wrote:
>>>> Hi,
>>>> Please review the following patch that fixes the case where we 
>>>> allocate a humongous object, and where the space left in the 
>>>> humongous region cannot fit a filler object. In that case we must 
>>>> set top of the last heap region to the end of the object. Also, 
>>>> there is a new jtreg test which crashes the JVM before this patch, 
>>>> and works fine after.
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8143587
>>>> Webrev: http://cr.openjdk.java.net/~david/JDK-8143587/webrev.00/
>>>> Testing: Passed jprt including new test.
>>>> Thanks,
>>>> David

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20151125/220d2bcb/attachment.htm>

More information about the hotspot-gc-dev mailing list