--- a/hotspot/src/share/vm/utilities/debug.cpp Tue Mar 01 09:42:19 2016 +0100
+++ b/hotspot/src/share/vm/utilities/debug.cpp Tue Mar 01 23:46:09 2016 +0100
@@ -51,9 +51,14 @@
#include "services/heapDumper.hpp"
#include "utilities/defaultStream.hpp"
#include "utilities/events.hpp"
+#include "utilities/macros.hpp"
#include "utilities/top.hpp"
#include "utilities/vmError.hpp"
+#if INCLUDE_TRACE
+#include "trace/tracing.hpp"
+#endif
+
#ifndef ASSERT
# ifdef _DEBUG
// NOTE: don't turn the lines below into a comment -- if you're getting
@@ -280,6 +285,12 @@
exit(2);
}
+static void notify_tracing() {
+#if INCLUDE_TRACE
+ Tracing::on_vm_error(true);
+#endif
+}
+
void report_insufficient_metaspace(size_t required_size) {
warning("\nThe MaxMetaspaceSize of " SIZE_FORMAT " bytes is not large enough.\n"
"Either don't specify the -XX:MaxMetaspaceSize=<size>\n"
@@ -302,6 +313,8 @@
HeapDumper::dump_heap_from_oome();
}
+ notify_tracing();
+
if (OnOutOfMemoryError && OnOutOfMemoryError[0]) {
VMError::report_java_out_of_memory(message);
}