RFR: 8068451: Kitchensink fails with assert(_size >= sz) failed: Negative size

Lois Foltan lois.foltan at oracle.com
Mon Feb 9 23:47:34 UTC 2015


Hi Coleen,

Looks good.  I couldn't view the diffs in nmtDCmd.cpp though.

Thanks,
Lois

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
>
> thanks,
> Coleen
>
>
>



More information about the hotspot-runtime-dev mailing list