Review request (XS): JDK-8009282: Assertion "assert(used_and_free == capacity_bytes) failed: Accounting is wrong" failed with -XX:+Verbose -XX:+TraceMetadataChunkAllocation
tao.mao at oracle.com
Mon Mar 11 17:54:15 PDT 2013
Looks good to me, too. As safety check, did you test the change clear on
any machine you previously were able to reproduce the bug?
On 3/11/2013 11:35 AM, Jon Masamitsu wrote:
> Looks good.
> On 03/11/13 06:12, Mikael Gerdin wrote:
>> Please review this small fix for an incorrect assert that can trigger
>> when we run out of metaspace memory.
>> The reasoning behind this change is that when running with the
>> command line flags specified in the bug report we call
>> MetaspaceAux::print_on when we're about to throw an
>> j.l.OutOfMemoryError. At that point another thread may be successful
>> in allocating metaspace memory in another class loader or smaller
>> memory chunks which are available.
>> The assert condition must only hold when the VM is at a safe point
>> and no other thread may be allocating metaspace memory.
More information about the hotspot-gc-dev