X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/be24a421768041ffd250dc4dc68a285f0b59b88f..e33bfee8391fbf3a1a0b4cd5cd33f14a291c8052:/src/simdag/sd_global.c diff --git a/src/simdag/sd_global.c b/src/simdag/sd_global.c index ee029e07bf..ce7651537f 100644 --- a/src/simdag/sd_global.c +++ b/src/simdag/sd_global.c @@ -66,6 +66,10 @@ static void _sd_cfg_cb__network_model(const char *name, int pos) surf_network_model_description_size, val); } +XBT_LOG_EXTERNAL_CATEGORY(sd_kernel); +XBT_LOG_EXTERNAL_CATEGORY(sd_task); +XBT_LOG_EXTERNAL_CATEGORY(sd_workstation); + /* create the config set and register what should be */ static void sd_config_init(void) { @@ -73,6 +77,11 @@ static void sd_config_init(void) if (_sd_init_status) return; /* Already inited, nothing to do */ + /* Connect our log channels: that must be done manually under windows */ + XBT_LOG_CONNECT(sd_kernel, sd); + XBT_LOG_CONNECT(sd_task, sd); + XBT_LOG_CONNECT(sd_workstation, sd); + _sd_init_status = 1; _sd_cfg_set = xbt_cfg_new(); @@ -281,7 +290,7 @@ void SD_application_reinit(void) { * * The XML file follows this DTD: * - * \include surfxml.dtd + * \include simgrid.dtd * * Here is a small example of such a platform: * @@ -392,7 +401,7 @@ SD_task_t* SD_simulate(double how_long) { double total_time = 0.0; /* we stop the simulation when total_time >= how_long */ double elapsed_time = 0.0; - SD_task_t task, dst; + SD_task_t task, task_safe, dst; SD_dependency_t dependency; surf_action_t action; SD_task_t *changed_tasks = NULL; @@ -421,7 +430,7 @@ SD_task_t* SD_simulate(double how_long) sd_global->watch_point_reached = 0; /* explore the ready tasks */ - xbt_swag_foreach(task, sd_global->ready_task_set) { + xbt_swag_foreach_safe(task, task_safe, sd_global->ready_task_set) { INFO1("Executing task '%s'", SD_task_get_name(task)); if ((task->state_changed = __SD_task_try_to_run(task))) { changed_tasks[changed_task_number++] = task; /* replace NULL by the task */