--- a/hotspot/src/share/vm/memory/metaspace.cpp Tue Mar 18 06:15:45 2014 +0100
+++ b/hotspot/src/share/vm/memory/metaspace.cpp Tue Mar 18 07:00:06 2014 +0100
@@ -3358,6 +3358,8 @@
MetaWord* result = loader_data->metaspace_non_null()->allocate(word_size, mdtype);
if (result == NULL) {
+ tracer()->report_metaspace_allocation_failure(loader_data, word_size, type, mdtype);
+
// Allocation failed.
if (is_init_completed()) {
// Only start a GC if the bootstrapping has completed.
@@ -3426,6 +3428,16 @@
}
}
+const char* Metaspace::metadata_type_name(Metaspace::MetadataType mdtype) {
+ switch (mdtype) {
+ case Metaspace::ClassType: return "Class";
+ case Metaspace::NonClassType: return "Metadata";
+ default:
+ assert(false, err_msg("Got bad mdtype: %d", (int) mdtype));
+ return NULL;
+ }
+}
+
void Metaspace::record_allocation(void* ptr, MetaspaceObj::Type type, size_t word_size) {
assert(DumpSharedSpaces, "sanity");