comparison src/share/vm/runtime/mutexLocker.cpp @ 2195:bf8517f4e4d0

6766644: Redefinition of compiled method fails with assertion "Can not load classes with the Compiler thread" Summary: Defer posting events from the compiler thread: use service thread Reviewed-by: coleenp, dholmes, never, dcubed
author kamg
date Wed, 02 Feb 2011 14:38:01 -0500
parents 0fa27f37d4d4
children f08d439fab8c
comparison
equal deleted inserted replaced
2194:face83fc8882 2195:bf8517f4e4d0
127 Mutex* HotCardCache_lock = NULL; 127 Mutex* HotCardCache_lock = NULL;
128 128
129 Monitor* GCTaskManager_lock = NULL; 129 Monitor* GCTaskManager_lock = NULL;
130 130
131 Mutex* Management_lock = NULL; 131 Mutex* Management_lock = NULL;
132 Monitor* LowMemory_lock = NULL; 132 Monitor* Service_lock = NULL;
133 133
134 #define MAX_NUM_MUTEX 128 134 #define MAX_NUM_MUTEX 128
135 static Monitor * _mutex_array[MAX_NUM_MUTEX]; 135 static Monitor * _mutex_array[MAX_NUM_MUTEX];
136 static int _num_mutex; 136 static int _num_mutex;
137 137
201 def(RawMonitor_lock , Mutex, special, true ); 201 def(RawMonitor_lock , Mutex, special, true );
202 def(OopMapCacheAlloc_lock , Mutex, leaf, true ); // used for oop_map_cache allocation. 202 def(OopMapCacheAlloc_lock , Mutex, leaf, true ); // used for oop_map_cache allocation.
203 203
204 def(Patching_lock , Mutex , special, true ); // used for safepointing and code patching. 204 def(Patching_lock , Mutex , special, true ); // used for safepointing and code patching.
205 def(ObjAllocPost_lock , Monitor, special, false); 205 def(ObjAllocPost_lock , Monitor, special, false);
206 def(LowMemory_lock , Monitor, special, true ); // used for low memory detection 206 def(Service_lock , Monitor, special, true ); // used for service thread operations
207 def(JmethodIdCreation_lock , Mutex , leaf, true ); // used for creating jmethodIDs. 207 def(JmethodIdCreation_lock , Mutex , leaf, true ); // used for creating jmethodIDs.
208 208
209 def(SystemDictionary_lock , Monitor, leaf, true ); // lookups done by VM thread 209 def(SystemDictionary_lock , Monitor, leaf, true ); // lookups done by VM thread
210 def(PackageTable_lock , Mutex , leaf, false); 210 def(PackageTable_lock , Mutex , leaf, false);
211 def(InlineCacheBuffer_lock , Mutex , leaf, true ); 211 def(InlineCacheBuffer_lock , Mutex , leaf, true );