8011760: assert(delta != 0) failed: dup pointer in MemBaseline::malloc_sort_by_addr
authorzgu
Tue, 09 Jul 2013 13:18:16 -0400
changeset 18693 05cdb2bdd063
parent 18685 6ad330ce9523
child 18694 555a3b5b250a
8011760: assert(delta != 0) failed: dup pointer in MemBaseline::malloc_sort_by_addr Summary: Some of qsort implementation on Linux x86 compares element to itself, which is mistakenly treated as duplicate pointer Reviewed-by: dcubed, acorn
hotspot/src/share/vm/services/memBaseline.cpp
--- a/hotspot/src/share/vm/services/memBaseline.cpp	Fri Jul 05 08:09:40 2013 -0700
+++ b/hotspot/src/share/vm/services/memBaseline.cpp	Tue Jul 09 13:18:16 2013 -0400
@@ -486,7 +486,7 @@
   const MemPointerRecord* mp1 = (const MemPointerRecord*)p1;
   const MemPointerRecord* mp2 = (const MemPointerRecord*)p2;
   int delta = UNSIGNED_COMPARE(mp1->addr(), mp2->addr());
-  assert(delta != 0, "dup pointer");
+  assert(p1 == p2 || delta != 0, "dup pointer");
   return delta;
 }