Mercurial > hg > truffle
comparison src/share/vm/runtime/os.cpp @ 14190:ce86c36b8921
8029178: Parallel class loading test anonymous-simple gets SIGSEGV in Metaspace::contains
Summary: Metaspace::contains cannot look at purged metaspaces while CMS concurrently deallocates them.
Reviewed-by: mgerdin, sspitsyn, jmasa
author | coleenp |
---|---|
date | Tue, 07 Jan 2014 13:26:56 -0500 |
parents | 179cd89fb279 |
children | d3a3fc905c7e 63a4eb8bcd23 ecf3678d5736 |
comparison
equal
deleted
inserted
replaced
14189:1a899ea6b7ed | 14190:ce86c36b8921 |
---|---|
1079 return; | 1079 return; |
1080 } | 1080 } |
1081 | 1081 |
1082 } | 1082 } |
1083 | 1083 |
1084 #ifndef PRODUCT | |
1085 // Check if in metaspace. | 1084 // Check if in metaspace. |
1086 if (ClassLoaderDataGraph::contains((address)addr)) { | 1085 if (ClassLoaderDataGraph::contains((address)addr)) { |
1087 // Use addr->print() from the debugger instead (not here) | 1086 // Use addr->print() from the debugger instead (not here) |
1088 st->print_cr(INTPTR_FORMAT | 1087 st->print_cr(INTPTR_FORMAT |
1089 " is pointing into metadata", addr); | 1088 " is pointing into metadata", addr); |
1090 return; | 1089 return; |
1091 } | 1090 } |
1092 #endif | |
1093 | 1091 |
1094 // Try an OS specific find | 1092 // Try an OS specific find |
1095 if (os::find(addr, st)) { | 1093 if (os::find(addr, st)) { |
1096 return; | 1094 return; |
1097 } | 1095 } |