RFR: 8068451: Kitchensink fails with assert(_size >= sz) failed: Negative size
harold.seigel at oracle.com
Tue Feb 10 18:00:20 UTC 2015
Your changes look good.
On 2/9/2015 12:38 PM, Coleen Phillimore wrote:
> Summary: Need ThreadCritical lock around chunk pool cleaning and
> copying for snapshot
> This change restores the TC lock around the code that frees chunks
> from the chunk pool. NMT1 needed ThreadCritical lock to track
> malloc'ed memory, but NMT2 doesn't. This lock is also used to protect
> the code that copies the running snapshot into a saved snapshot.
> After the latter snapshot is created, NMT reporting adjusts the
> malloc'ed memory for chunks because this memory is already reported as
> the various arenas, so we don't want to double-count it.
> Tested Kitchensink with NMT for three days with code to sleep during
> the snapshot copy. This code reproduced the assertion 18x in about 8
> hrs. (Took out the sleep). Also, fixed some whitespace and typos in
> the execution path of the bug. Also ran NMT tests. Can't add a test,
> it's noreg-hard.
> open webrev at http://cr.openjdk.java.net/~coleenp/8068451/
> bug link https://bugs.openjdk.java.net/browse/JDK-8068451
More information about the hotspot-runtime-dev