Lines Matching refs:ObjectMonitor

145 int dtrace_waited_probe(ObjectMonitor* monitor, Handle obj, Thread* thr) {
153 ObjectMonitor * ObjectSynchronizer::gBlockList = NULL ;
154 ObjectMonitor * volatile ObjectSynchronizer::gFreeList = NULL ;
155 ObjectMonitor * volatile ObjectSynchronizer::gOmInUseList = NULL ;
200 ObjectMonitor * m = mark->monitor() ;
291 ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, obj());
304 ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, obj());
330 ObjectMonitor* monitor = ObjectSynchronizer::inflate_helper(obj());
345 ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, obj);
388 ObjectMonitor* monitor = ObjectSynchronizer::inflate(THREAD, obj());
637 ObjectMonitor* monitor = NULL;
734 // Contended case, header points to ObjectMonitor (tagged pointer)
736 ObjectMonitor* monitor = mark->monitor();
776 // The Object:ObjectMonitor relationship is stable as long as we're
811 // Contended case, header points to ObjectMonitor (tagged pointer)
813 ObjectMonitor* monitor = mark->monitor();
832 ObjectMonitor* block = gBlockList;
833 ObjectMonitor* mid;
843 block = (ObjectMonitor*) block->FreeNext;
848 static inline ObjectMonitor* next(ObjectMonitor* block) {
858 for (ObjectMonitor* block = gBlockList; block != NULL; block = next(block)) {
861 ObjectMonitor* mid = &block[i];
871 // ObjectMonitor Lifecycle
916 if (ObjectMonitor::Knob_Verbose) {
926 if (ObjectMonitor::Knob_Verbose) {
934 ObjectMonitor* mid;
948 ObjectMonitor * ATTR ObjectSynchronizer::omAlloc (Thread * Self) {
956 ObjectMonitor * m ;
993 ObjectMonitor * take = gFreeList ;
1019 ObjectMonitor * temp = new ObjectMonitor[_BLOCKSIZE];
1025 vm_exit_out_of_memory (sizeof (ObjectMonitor[_BLOCKSIZE]), "Allocate ObjectMonitors") ;
1034 // look like: class Block { Block * next; int N; ObjectMonitor Body [N] ; }
1078 void ObjectSynchronizer::omRelease (Thread * Self, ObjectMonitor * m, bool fromPerThreadAlloc) {
1083 ObjectMonitor* curmidinuse = NULL;
1084 for (ObjectMonitor* mid = Self->omInUseList; mid != NULL; ) {
1129 ObjectMonitor * List = Self->omFreeList ; // Null-terminated SLL
1131 ObjectMonitor * Tail = NULL ;
1134 ObjectMonitor * s ;
1146 ObjectMonitor * InUseList = Self->omInUseList;
1147 ObjectMonitor * InUseTail = NULL ;
1151 ObjectMonitor *curom;
1180 ObjectMonitor* ObjectSynchronizer::inflate_helper(oop obj) {
1195 ObjectMonitor * ATTR ObjectSynchronizer::inflate (Thread * Self, oop object) {
1214 ObjectMonitor * inf = mark->monitor() ;
1253 ObjectMonitor * m = omAlloc (Self) ;
1261 m->_SpinDuration = ObjectMonitor::Knob_SpinLimit ; // Consider: maintain by type/class
1321 if (ObjectMonitor::_sync_Inflations != NULL) ObjectMonitor::_sync_Inflations->inc() ;
1345 ObjectMonitor * m = omAlloc (Self) ;
1354 m->_SpinDuration = ObjectMonitor::Knob_SpinLimit ; // consider: keep metastats by type/class
1371 if (ObjectMonitor::_sync_Inflations != NULL) ObjectMonitor::_sync_Inflations->inc() ;
1425 bool ObjectSynchronizer::deflate_monitor(ObjectMonitor* mid, oop obj,
1426 ObjectMonitor** FreeHeadp, ObjectMonitor** FreeTailp) {
1458 ObjectMonitor * prevtail = *FreeTailp;
1469 int ObjectSynchronizer::walk_monitor_list(ObjectMonitor** listheadp,
1470 ObjectMonitor** FreeHeadp, ObjectMonitor** FreeTailp) {
1471 ObjectMonitor* mid;
1472 ObjectMonitor* next;
1473 ObjectMonitor* curmidinuse = NULL;
1508 ObjectMonitor * FreeHead = NULL ; // Local SLL of scavenged monitors
1509 ObjectMonitor * FreeTail = NULL ;
1531 int deflatedcount = walk_monitor_list((ObjectMonitor **)&gOmInUseList, &FreeHead, &FreeTail);
1537 } else for (ObjectMonitor* block = gBlockList; block != NULL; block = next(block)) {
1542 ObjectMonitor* mid = &block[i];
1568 if (ObjectMonitor::Knob_Verbose) {
1587 if (ObjectMonitor::_sync_Deflations != NULL) ObjectMonitor::_sync_Deflations->inc(nScavenged) ;
1588 if (ObjectMonitor::_sync_MonExtant != NULL) ObjectMonitor::_sync_MonExtant ->set_value(nInCirculation);
1607 void do_monitor(ObjectMonitor* mid) {
1651 ObjectMonitor* block = gBlockList;
1652 ObjectMonitor* mid;
1662 block = (ObjectMonitor*) block->FreeNext;
1670 int ObjectSynchronizer::verify_objmon_isinpool(ObjectMonitor *monitor) {
1671 ObjectMonitor* block = gBlockList;
1679 assert((diff % sizeof(ObjectMonitor)) == 0, "check");
1682 block = (ObjectMonitor*) block->FreeNext;