src/hotspot/share/runtime/vmThread.cpp
changeset 57758 91a758925be7
parent 55514 03468b206457
child 58225 4eebb9aadbe3
equal deleted inserted replaced
57757:902cef494e66 57758:91a758925be7
   675     if (!op->doit_prologue()) {
   675     if (!op->doit_prologue()) {
   676       return;   // op was cancelled
   676       return;   // op was cancelled
   677     }
   677     }
   678 
   678 
   679     // Setup VM_operations for execution
   679     // Setup VM_operations for execution
   680     op->set_calling_thread(t, Thread::get_priority(t));
   680     op->set_calling_thread(t);
   681 
   681 
   682     // It does not make sense to execute the epilogue, if the VM operation object is getting
   682     // It does not make sense to execute the epilogue, if the VM operation object is getting
   683     // deallocated by the VM thread.
   683     // deallocated by the VM thread.
   684     bool execute_epilog = !op->is_cheap_allocated();
   684     bool execute_epilog = !op->is_cheap_allocated();
   685     assert(!concurrent || op->is_cheap_allocated(), "concurrent => cheap_allocated");
   685     assert(!concurrent || op->is_cheap_allocated(), "concurrent => cheap_allocated");
   724       // does not allow nested scavenges or compiles.
   724       // does not allow nested scavenges or compiles.
   725       if (!prev_vm_operation->allow_nested_vm_operations()) {
   725       if (!prev_vm_operation->allow_nested_vm_operations()) {
   726         fatal("Nested VM operation %s requested by operation %s",
   726         fatal("Nested VM operation %s requested by operation %s",
   727               op->name(), vm_operation()->name());
   727               op->name(), vm_operation()->name());
   728       }
   728       }
   729       op->set_calling_thread(prev_vm_operation->calling_thread(), prev_vm_operation->priority());
   729       op->set_calling_thread(prev_vm_operation->calling_thread());
   730     }
   730     }
   731 
   731 
   732     EventMark em("Executing %s VM operation: %s", prev_vm_operation ? "nested" : "", op->name());
   732     EventMark em("Executing %s VM operation: %s", prev_vm_operation ? "nested" : "", op->name());
   733 
   733 
   734     // Release all internal handles after operation is evaluated
   734     // Release all internal handles after operation is evaluated