comparison src/share/vm/services/memSnapshot.hpp @ 6599:4acebbe310e1

7185614: NMT ON: "check by caller" assertion failed on nsk ThreadMXBean test 7187429: NMT ON: Merge failure should cause NMT to shutdown Summary: Fixed NMT assertion failures Reviewed-by: acorn, kvn
author zgu
date Wed, 01 Aug 2012 17:19:30 -0400
parents d2a62e0f25eb
children 33143ee07800
comparison
equal deleted inserted replaced
6242:fe94b4e7212b 6599:4acebbe310e1
61 virtual bool insert(MemPointer* ptr) { 61 virtual bool insert(MemPointer* ptr) {
62 if (_pos > 0) { 62 if (_pos > 0) {
63 MemPointer* p1 = (MemPointer*)ptr; 63 MemPointer* p1 = (MemPointer*)ptr;
64 MemPointer* p2 = (MemPointer*)_array->at(_pos - 1); 64 MemPointer* p2 = (MemPointer*)_array->at(_pos - 1);
65 assert(!is_dup_pointer(p1, p2), 65 assert(!is_dup_pointer(p1, p2),
66 "dup pointer"); 66 err_msg("duplicated pointer, flag = [%x]", (unsigned int)((MemPointerRecord*)p1)->flags()));
67 } 67 }
68 if (_pos < _array->length() -1) { 68 if (_pos < _array->length() -1) {
69 MemPointer* p1 = (MemPointer*)ptr; 69 MemPointer* p1 = (MemPointer*)ptr;
70 MemPointer* p2 = (MemPointer*)_array->at(_pos + 1); 70 MemPointer* p2 = (MemPointer*)_array->at(_pos + 1);
71 assert(!is_dup_pointer(p1, p2), 71 assert(!is_dup_pointer(p1, p2),
72 "dup pointer"); 72 err_msg("duplicated pointer, flag = [%x]", (unsigned int)((MemPointerRecord*)p1)->flags()));
73 } 73 }
74 return _array->insert_at(ptr, _pos); 74 return _array->insert_at(ptr, _pos);
75 } 75 }
76 76
77 virtual bool insert_after(MemPointer* ptr) { 77 virtual bool insert_after(MemPointer* ptr) {
78 if (_pos > 0) { 78 if (_pos > 0) {
79 MemPointer* p1 = (MemPointer*)ptr; 79 MemPointer* p1 = (MemPointer*)ptr;
80 MemPointer* p2 = (MemPointer*)_array->at(_pos - 1); 80 MemPointer* p2 = (MemPointer*)_array->at(_pos - 1);
81 assert(!is_dup_pointer(p1, p2), 81 assert(!is_dup_pointer(p1, p2),
82 "dup pointer"); 82 err_msg("duplicated pointer, flag = [%x]", (unsigned int)((MemPointerRecord*)p1)->flags()));
83 } 83 }
84 if (_pos < _array->length() - 1) { 84 if (_pos < _array->length() - 1) {
85 MemPointer* p1 = (MemPointer*)ptr; 85 MemPointer* p1 = (MemPointer*)ptr;
86 MemPointer* p2 = (MemPointer*)_array->at(_pos + 1); 86 MemPointer* p2 = (MemPointer*)_array->at(_pos + 1);
87 87
88 assert(!is_dup_pointer(p1, p2), 88 assert(!is_dup_pointer(p1, p2),
89 "dup pointer"); 89 err_msg("duplicated pointer, flag = [%x]", (unsigned int)((MemPointerRecord*)p1)->flags()));
90 } 90 }
91 if (_array->insert_at(ptr, _pos + 1)) { 91 if (_array->insert_at(ptr, _pos + 1)) {
92 _pos ++; 92 _pos ++;
93 return true; 93 return true;
94 } 94 }