comparison src/share/vm/runtime/os.hpp @ 20559:c12e6bac4ad0

8056183: os::is_MP() always reports true when NMT is enabled Reviewed-by: shade, coleenp, bdelsart
author dholmes
date Wed, 10 Sep 2014 00:44:16 -0400
parents 833b0f92429a
children 7848fc12602b
comparison
equal deleted inserted replaced
20558:9609f24cecee 20559:c12e6bac4ad0
212 // Returns buffer, or NULL if it failed. 212 // Returns buffer, or NULL if it failed.
213 static char* iso8601_time(char* buffer, size_t buffer_length); 213 static char* iso8601_time(char* buffer, size_t buffer_length);
214 214
215 // Interface for detecting multiprocessor system 215 // Interface for detecting multiprocessor system
216 static inline bool is_MP() { 216 static inline bool is_MP() {
217 #if !INCLUDE_NMT 217 // During bootstrap if _processor_count is not yet initialized
218 assert(_processor_count > 0, "invalid processor count"); 218 // we claim to be MP as that is safest. If any platform has a
219 return _processor_count > 1 || AssumeMP; 219 // stub generator that might be triggered in this phase and for
220 #else 220 // which being declared MP when in fact not, is a problem - then
221 // NMT needs atomic operations before this initialization. 221 // the bootstrap routine for the stub generator needs to check
222 return true; 222 // the processor count directly and leave the bootstrap routine
223 #endif 223 // in place until called after initialization has ocurred.
224 return (_processor_count != 1) || AssumeMP;
224 } 225 }
225 static julong available_memory(); 226 static julong available_memory();
226 static julong physical_memory(); 227 static julong physical_memory();
227 static bool has_allocatable_memory_limit(julong* limit); 228 static bool has_allocatable_memory_limit(julong* limit);
228 static bool is_server_class_machine(); 229 static bool is_server_class_machine();