8011760: assert(delta != 0) failed: dup pointer in MemBaseline::malloc_sort_by_addr

Tue, 09 Jul 2013 13:18:16 -0400

author
zgu
date
Tue, 09 Jul 2013 13:18:16 -0400
changeset 5375
72fce0b2d341
parent 5367
cc5b7915104e
child 5376
2839ce15e450

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

src/share/vm/services/memBaseline.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/services/memBaseline.cpp	Fri Jul 05 08:09:40 2013 -0700
     1.2 +++ b/src/share/vm/services/memBaseline.cpp	Tue Jul 09 13:18:16 2013 -0400
     1.3 @@ -486,7 +486,7 @@
     1.4    const MemPointerRecord* mp1 = (const MemPointerRecord*)p1;
     1.5    const MemPointerRecord* mp2 = (const MemPointerRecord*)p2;
     1.6    int delta = UNSIGNED_COMPARE(mp1->addr(), mp2->addr());
     1.7 -  assert(delta != 0, "dup pointer");
     1.8 +  assert(p1 == p2 || delta != 0, "dup pointer");
     1.9    return delta;
    1.10  }
    1.11  

mercurial