simix_global->process_to_run.push_back(process);
intrusive_ptr_add_ref(process);
/* Tracing the process creation */
- TRACE_msg_process_create(process->getName(), process->pid, process->host);
+ if (TRACE_actor_is_enabled())
+ new simgrid::instr::Container(instr_pid(process->ciface()), "ACTOR",
+ simgrid::instr::Container::byName(process->host->getName()));
/* The onCreation() signal must be delayed until there, where the pid and everything is set */
simgrid::s4u::ActorPtr tmp = process->iface(); // Passing this directly to onCreation will lead to crashes
intrusive_ptr_add_ref(process);
/* Tracing the process creation */
- TRACE_msg_process_create(process->getName(), process->pid, process->host);
+ if (TRACE_actor_is_enabled())
+ new simgrid::instr::Container(instr_pid(process->ciface()), "ACTOR",
+ simgrid::instr::Container::byName(process->host->getName()));
auto* context = dynamic_cast<simgrid::kernel::context::AttachContext*>(process->context);
if (not context)
}
-void simcall_HANDLER_process_killall(smx_simcall_t simcall, int reset_pid) {
- SIMIX_process_killall(simcall->issuer, reset_pid);
+void simcall_HANDLER_process_killall(smx_simcall_t simcall)
+{
+ SIMIX_process_killall(simcall->issuer);
}
/**
* \brief Kills all running processes.
* \param issuer this one will not be killed
*/
-void SIMIX_process_killall(smx_actor_t issuer, int reset_pid)
+void SIMIX_process_killall(smx_actor_t issuer)
{
for (auto const& kv : simix_global->process_list)
if (kv.second != issuer)
SIMIX_process_kill(kv.second, issuer);
-
- if (reset_pid > 0)
- simix_process_maxpid = reset_pid;
}
void SIMIX_process_change_host(smx_actor_t actor, sg_host_t dest)
std::rethrow_exception(std::move(exception));
}
- if(SMPI_switch_data_segment){
- SMPI_switch_data_segment(self->pid);
+ if (SMPI_switch_data_segment && not self->finished) {
+ SMPI_switch_data_segment(self->iface());
}
}