RFR (S) 6909265: assert(_OnDeck != Self->_MutexEvent, "invariant") with -XX:+PrintMallocFree

David Holmes david.holmes at oracle.com
Thu Feb 1 03:36:24 UTC 2018


Hi Coleen,

On 1/02/2018 1:01 PM, coleen.phillimore at oracle.com wrote:
> Summary: Convert to logging without thread locking
> 
> There are two options (-XX:+PrintMallocFree and -XX:+PrintMalloc) to 
> print the calls and memory returned in malloc and free calls in the vm. 
> I converted the first one to Unified Logging which doesn't crash getting 
> the tty lock in the Thread destructor and removed the latter.  I don't 
> see the usefulness of this logging honestly, so if the opinion is to 
> remove this logging, I'd be happy to do so.  NMT seems much more useful.

I'm not sure about this one. Arguably some interesting malloc/frees 
occur before log configuration.

That aside, given you always seem to do:

log_is_enabled(Trace, malloc, free)

which requires

-Xlog:malloc+free=trace

would it make more sense to define a single tag eg mallocfree or 
nativemem or ???

Or, as you say, just drop this altogether. Is it useful for when 
debugging NMT?

Thanks,
David

> Tested with NMT and tier1 tests, and wrote test.
> 
> open webrev at http://cr.openjdk.java.net/~coleenp/6909265.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-6909265
> 
> Thanks,
> Coleen


More information about the hotspot-runtime-dev mailing list