RFR: 8138705: Kitchen sink stress test fails

Coleen Phillimore coleen.phillimore at oracle.com
Tue May 17 02:29:28 UTC 2016


Hi Max,

http://cr.openjdk.java.net/~mockner/8138705/src/share/vm/services/virtualMemoryTracker.cpp.udiff.html

You should take out all the debugging code for mtTest unless you want to 
convert to UL.   Hopefully this debugging won't be needed in this detail 
once this bug is fixed though.

I really like the visual comments in the test!

Thanks,
Coleen



On 5/13/16 3:39 PM, Max Ockner wrote:
> Hello,
> Please review this fix which allows NMT to handle overlapping commits.
>
> Though it would make sense to uncommit space before committing over 
> it,  this is not always the way things are done. Kitchensink 
> encounters some intentional overlapping commits in gc, which 
> previously would cause NMT to throw an assert. Now, these overlapping 
> commits are handled by recording an uncommit of the newly committed 
> region before recording the commit. This effectively chops any of the 
> already-committed space off of the existing committed region before 
> adding the new commit.  In order for this all to work, 
> ReservedMemoryRegion::remove_uncommitted_region was changed to support 
> uncommitting an arbitrary region. The target behavior of this 
> operation is to truncate (or split) committed regions which overlap 
> with the region being uncommitted, while only subtracting from the 
> total  the amount of memory which was actually cleared.
>
> Bug:  https://bugs.openjdk.java.net/browse/JDK-8138705
> Webrev:  http://cr.openjdk.java.net/~mockner/8138705/
>
> Tested with jtreg NMT tests. Survived 72 hours of Kitchensink.
> Added a test: runtime/NMT/CommitOverlappingRegions.java
> This test performs various commits and uncommits that overlap in 
> different ways, and checks that it computes the amount of committed 
> space correctly.
>
> Thanks,
> Max



More information about the hotspot-runtime-dev mailing list