hotspot/src/share/vm/memory/metaspaceShared.cpp
changeset 46522 86b13b03a053
parent 46464 6432a858a220
child 46560 388aa8d67c80
--- a/hotspot/src/share/vm/memory/metaspaceShared.cpp	Fri Jun 02 16:32:39 2017 +0200
+++ b/hotspot/src/share/vm/memory/metaspaceShared.cpp	Mon Jun 05 13:13:38 2017 -0400
@@ -36,6 +36,8 @@
 #include "gc/shared/gcLocker.hpp"
 #include "interpreter/bytecodeStream.hpp"
 #include "interpreter/bytecodes.hpp"
+#include "logging/log.hpp"
+#include "logging/logMessage.hpp"
 #include "memory/filemap.hpp"
 #include "memory/metaspace.hpp"
 #include "memory/metaspaceShared.hpp"
@@ -330,9 +332,7 @@
 
   // We already checked (and, if necessary, adjusted n) when the vtables were allocated, so we are
   // safe to do memcpy.
-  if (PrintSharedSpaces) {
-    tty->print_cr("Copying %3d vtable entries for %s", n, name);
-  }
+  log_debug(cds, vtables)("Copying %3d vtable entries for %s", n, name);
   memcpy(dstvtable, srcvtable, sizeof(intptr_t) * n);
   return dstvtable + n;
 }
@@ -383,9 +383,7 @@
       break;
     }
   }
-  if (PrintSharedSpaces) {
-    tty->print_cr("Found   %3d vtable entries for %s", vtable_len, name);
-  }
+  log_debug(cds, vtables)("Found   %3d vtable entries for %s", vtable_len, name);
 
   return vtable_len;
 }
@@ -628,9 +626,13 @@
   const char *sep = "--------------------+---------------------------+---------------------------+--------------------------";
   const char *hdr = "                        ro_cnt   ro_bytes     % |   rw_cnt   rw_bytes     % |  all_cnt  all_bytes     %";
 
-  tty->print_cr("Detailed metadata info (rw includes md and mc):");
-  tty->print_cr("%s", hdr);
-  tty->print_cr("%s", sep);
+  ResourceMark rm;
+  LogMessage(cds) msg;
+  stringStream info_stream;
+
+  info_stream.print_cr("Detailed metadata info (rw includes md and mc):");
+  info_stream.print_cr("%s", hdr);
+  info_stream.print_cr("%s", sep);
   for (int type = 0; type < int(_number_of_types); type ++) {
     const char *name = type_name((Type)type);
     int ro_count = _counts[RO][type];
@@ -644,10 +646,10 @@
     double rw_perc = 100.0 * double(rw_bytes) / double(rw_all);
     double perc    = 100.0 * double(bytes)    / double(ro_all + rw_all);
 
-    tty->print_cr(fmt_stats, name,
-                  ro_count, ro_bytes, ro_perc,
-                  rw_count, rw_bytes, rw_perc,
-                  count, bytes, perc);
+    info_stream.print_cr(fmt_stats, name,
+                         ro_count, ro_bytes, ro_perc,
+                         rw_count, rw_bytes, rw_perc,
+                         count, bytes, perc);
 
     all_ro_count += ro_count;
     all_ro_bytes += ro_bytes;
@@ -662,14 +664,16 @@
   double all_rw_perc = 100.0 * double(all_rw_bytes) / double(rw_all);
   double all_perc    = 100.0 * double(all_bytes)    / double(ro_all + rw_all);
 
-  tty->print_cr("%s", sep);
-  tty->print_cr(fmt_stats, "Total",
-                all_ro_count, all_ro_bytes, all_ro_perc,
-                all_rw_count, all_rw_bytes, all_rw_perc,
-                all_count, all_bytes, all_perc);
+  info_stream.print_cr("%s", sep);
+  info_stream.print_cr(fmt_stats, "Total",
+                       all_ro_count, all_ro_bytes, all_ro_perc,
+                       all_rw_count, all_rw_bytes, all_rw_perc,
+                       all_count, all_bytes, all_perc);
 
   assert(all_ro_bytes == ro_all, "everything should have been counted");
   assert(all_rw_bytes == rw_all, "everything should have been counted");
+
+  msg.info("%s", info_stream.as_string());
 #undef fmt_stats
 }
 
@@ -897,7 +901,7 @@
   // Restore the vtable in case we invoke any virtual methods.
   MetaspaceShared::clone_cpp_vtables((intptr_t*)vtbl_list);
 
-  if (PrintSharedSpaces) {
+  if (log_is_enabled(Info, cds)) {
     DumpAllocClosure dac;
     dac.iterate_metaspace(_loader_data->ro_metaspace(), DumpAllocClosure::RO);
     dac.iterate_metaspace(_loader_data->rw_metaspace(), DumpAllocClosure::RW);
@@ -1064,9 +1068,7 @@
     }
     tty->print_cr("Loading classes to share: done.");
 
-    if (PrintSharedSpaces) {
-      tty->print_cr("Shared spaces: preloaded %d classes", class_count);
-    }
+    log_info(cds)("Shared spaces: preloaded %d classes", class_count);
 
     // Rewrite and link classes
     tty->print_cr("Rewriting and linking classes ...");
@@ -1102,9 +1104,9 @@
 
       CLEAR_PENDING_EXCEPTION;
       if (klass != NULL) {
-        if (PrintSharedSpaces && Verbose && WizardMode) {
+        if (log_is_enabled(Trace, cds)) {
           ResourceMark rm;
-          tty->print_cr("Shared spaces preloaded: %s", klass->external_name());
+          log_trace(cds)("Shared spaces preloaded: %s", klass->external_name());
         }
 
         InstanceKlass* ik = InstanceKlass::cast(klass);