diff src/share/vm/services/management.cpp @ 12103:a70566600baf

8020530: Non heap memory size calculated incorrectly Reviewed-by: coleenp, sla Contributed-by: vladimir.kempik@oracle.com
author poonam
date Wed, 21 Aug 2013 22:12:11 -0700
parents c01913206da5
children 72b7e96c1922
line wrap: on
line diff
--- a/src/share/vm/services/management.cpp	Wed Aug 21 13:18:52 2013 +0200
+++ b/src/share/vm/services/management.cpp	Wed Aug 21 22:12:11 2013 -0700
@@ -876,8 +876,6 @@
       total_used += u.used();
       total_committed += u.committed();
 
-      // if any one of the memory pool has undefined init_size or max_size,
-      // set it to -1
       if (u.init_size() == (size_t)-1) {
         has_undefined_init_size = true;
       }
@@ -894,6 +892,15 @@
     }
   }
 
+  // if any one of the memory pool has undefined init_size or max_size,
+  // set it to -1
+  if (has_undefined_init_size) {
+    total_init = (size_t)-1;
+  }
+  if (has_undefined_max_size) {
+    total_max = (size_t)-1;
+  }
+
   MemoryUsage usage((heap ? InitialHeapSize : total_init),
                     total_used,
                     total_committed,