--- a/hotspot/src/share/vm/oops/instanceKlass.cpp Tue May 20 20:35:39 2014 +0200
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp Wed May 21 14:36:18 2014 -0400
@@ -1273,6 +1273,12 @@
void InstanceKlass::methods_do(void f(Method* method)) {
+ // Methods aren't stable until they are loaded. This can be read outside
+ // a lock through the ClassLoaderData for profiling
+ if (!is_loaded()) {
+ return;
+ }
+
int len = methods()->length();
for (int index = 0; index < len; index++) {
Method* m = methods()->at(index);