hotspot/src/share/vm/classfile/classLoaderData.cpp
changeset 24658 e41df2fc6e87
parent 24457 0e20b36df5c4
child 25051 8110ec6e7340
--- a/hotspot/src/share/vm/classfile/classLoaderData.cpp	Tue May 20 20:35:39 2014 +0200
+++ b/hotspot/src/share/vm/classfile/classLoaderData.cpp	Wed May 21 14:36:18 2014 -0400
@@ -274,6 +274,8 @@
   MutexLockerEx ml(metaspace_lock(),  Mutex::_no_safepoint_check_flag);
   Klass* old_value = _klasses;
   k->set_next_link(old_value);
+  // Make sure linked class is stable, since the class list is walked without a lock
+  OrderAccess::storestore();
   // link the new item into the list
   _klasses = k;