Mercurial > hg > graal-jvmci-8
diff src/share/vm/memory/metaspaceTracer.cpp @ 17770:5af31f70a866
8036701: Add trace event when a metaspace throws out of memory error
Reviewed-by: stefank, mgerdin
author | ehelin |
---|---|
date | Fri, 21 Mar 2014 10:28:07 +0100 |
parents | bc7714614ad8 |
children | 794399f4f5d9 |
line wrap: on
line diff
--- a/src/share/vm/memory/metaspaceTracer.cpp Fri Mar 21 10:20:00 2014 +0100 +++ b/src/share/vm/memory/metaspaceTracer.cpp Fri Mar 21 10:28:07 2014 +0100 @@ -44,7 +44,22 @@ size_t word_size, MetaspaceObj::Type objtype, Metaspace::MetadataType mdtype) const { - EventMetaspaceAllocationFailure event; + send_allocation_failure_event<EventMetaspaceAllocationFailure>(cld, word_size, objtype, mdtype); +} + +void MetaspaceTracer::report_metadata_oom(ClassLoaderData *cld, + size_t word_size, + MetaspaceObj::Type objtype, + Metaspace::MetadataType mdtype) const { + send_allocation_failure_event<EventMetaspaceOOM>(cld, word_size, objtype, mdtype); +} + +template <typename E> +void MetaspaceTracer::send_allocation_failure_event(ClassLoaderData *cld, + size_t word_size, + MetaspaceObj::Type objtype, + Metaspace::MetadataType mdtype) const { + E event; if (event.should_commit()) { if (cld->is_anonymous()) { event.set_classLoader(NULL);