X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/06be38ef613115769d3724faf9df315dd9a34957..255192ad7c234ae1f6631d080b0d2d9cfc60ec1b:/src/simix/smx_global.cpp diff --git a/src/simix/smx_global.cpp b/src/simix/smx_global.cpp index 4ea34c271d..be1826fe62 100644 --- a/src/simix/smx_global.cpp +++ b/src/simix/smx_global.cpp @@ -23,7 +23,7 @@ #include "xbt/ex.h" /* ex_backtrace_display */ #include "mc/mc.h" -#include "simgrid/sg_config.h" +#include "simgrid/sg_config.hpp" #include "src/mc/mc_replay.hpp" #include "src/surf/StorageImpl.hpp" @@ -68,7 +68,7 @@ public: s_smx_timer_t(double date, simgrid::xbt::Task callback) : date(date), callback(std::move(callback)) {} }; -void (*SMPI_switch_data_segment)(int) = nullptr; +void (*SMPI_switch_data_segment)(simgrid::s4u::ActorPtr) = nullptr; int _sg_do_verbose_exit = 1; static void inthandler(int) @@ -169,21 +169,16 @@ static void kill_process(smx_actor_t process) SIMIX_process_kill(process, nullptr); } -static std::function maestro_code; namespace simgrid { namespace simix { simgrid::xbt::signal onDeadlock; -XBT_PUBLIC(void) set_maestro(std::function code) -{ - maestro_code = std::move(code); -} - } } +static std::function maestro_code; void SIMIX_set_maestro(void (*code)(void*), void* data) { #ifdef _WIN32 @@ -195,9 +190,6 @@ void SIMIX_set_maestro(void (*code)(void*), void* data) /** * \ingroup SIMIX_API * \brief Initialize SIMIX internal data. - * - * \param argc Argc - * \param argv Argv */ void SIMIX_global_init(int *argc, char **argv) { @@ -220,7 +212,7 @@ void SIMIX_global_init(int *argc, char **argv) // Either create a new context with maestro or create // a context object with the current context mestro): - simgrid::simix::create_maestro(maestro_code); + simgrid::kernel::actor::create_maestro(maestro_code); /* Prepare to display some more info when dying on Ctrl-C pressing */ signal(SIGINT, inthandler); @@ -345,15 +337,15 @@ static void SIMIX_wake_processes() XBT_DEBUG("Handling the processes whose action failed (if any)"); while ((action = surf_model_extract_failed_action_set(model))) { XBT_DEBUG(" Handling Action %p",action); - SIMIX_simcall_exit(static_cast(action->getData())); + SIMIX_simcall_exit(static_cast(action->get_data())); } XBT_DEBUG("Handling the processes whose action terminated normally (if any)"); while ((action = surf_model_extract_done_action_set(model))) { XBT_DEBUG(" Handling Action %p",action); - if (action->getData() == nullptr) + if (action->get_data() == nullptr) XBT_DEBUG("probably vcpu's action %p, skip", action); else - SIMIX_simcall_exit(static_cast(action->getData())); + SIMIX_simcall_exit(static_cast(action->get_data())); } } } @@ -661,12 +653,12 @@ void SIMIX_display_process_status() if (boost::dynamic_pointer_cast(process->waiting_synchro) != nullptr) synchro_description = "I/O"; - XBT_INFO("Process %lu (%s@%s): waiting for %s synchro %p (%s) in state %d to finish", process->pid, + XBT_INFO("Process %ld (%s@%s): waiting for %s synchro %p (%s) in state %d to finish", process->pid, process->getCname(), process->host->getCname(), synchro_description, process->waiting_synchro.get(), process->waiting_synchro->name.c_str(), (int)process->waiting_synchro->state); } else { - XBT_INFO("Process %lu (%s@%s)", process->pid, process->getCname(), process->host->getCname()); + XBT_INFO("Process %ld (%s@%s)", process->pid, process->getCname(), process->host->getCname()); } } }