X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c5ad8ca1a68bbaa9152471c8d0eeb99d762f0d86..f816b895e4b1219c3dcd0443a55ef90690a849ef:/src/mc/mc_global.c diff --git a/src/mc/mc_global.c b/src/mc/mc_global.c index 68f11cd175..c0b7acddda 100644 --- a/src/mc/mc_global.c +++ b/src/mc/mc_global.c @@ -1,14 +1,19 @@ +/* Copyright (c) 2008-2012 Da SimGrid Team. All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + #include #include #include #include #include "../surf/surf_private.h" -#include "../simix/private.h" +#include "../simix/smx_private.h" #include "xbt/fifo.h" -#include "private.h" - +#include "mc_private.h" +XBT_LOG_NEW_CATEGORY(mc, "All MC categories"); XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_global, mc, "Logging specific to MC (global)"); @@ -185,7 +190,7 @@ void MC_wait_for_requests(void) SIMIX_process_runall(); xbt_dynar_foreach(simix_global->process_that_ran, iter, process) { req = &process->simcall; - if (req->call != REQ_NO_REQ && !MC_request_is_visible(req)) + if (req->call != SIMCALL_NONE && !MC_request_is_visible(req)) SIMIX_simcall_pre(req, 0); } } @@ -198,7 +203,7 @@ int MC_deadlock_check() if(xbt_swag_size(simix_global->process_list)){ deadlock = TRUE; xbt_swag_foreach(process, simix_global->process_list){ - if(process->simcall.call != REQ_NO_REQ + if(process->simcall.call != SIMCALL_NONE && MC_request_is_enabled(&process->simcall)){ deadlock = FALSE; break; @@ -499,7 +504,7 @@ void MC_dump_stack_liveness(xbt_fifo_t stack){ void MC_print_statistics(mc_stats_t stats) { - XBT_INFO("State space size ~= %lu", stats->state_size); + //XBT_INFO("State space size ~= %lu", stats->state_size); XBT_INFO("Expanded states = %lu", stats->expanded_states); XBT_INFO("Visited states = %lu", stats->visited_states); XBT_INFO("Executed transitions = %lu", stats->executed_transitions); @@ -522,14 +527,19 @@ void MC_print_statistics_pairs(mc_stats_pair_t stats) void MC_assert(int prop) { - if (MC_IS_ENABLED && !prop) { - XBT_INFO("**************************"); - XBT_INFO("*** PROPERTY NOT VALID ***"); - XBT_INFO("**************************"); - XBT_INFO("Counter-example execution trace:"); - MC_dump_stack_safety_stateless(mc_stack_safety_stateless); - MC_print_statistics(mc_stats); - xbt_abort(); + if (MC_IS_ENABLED ){ + if(!prop) { + XBT_INFO("**************************"); + XBT_INFO("*** PROPERTY NOT VALID ***"); + XBT_INFO("**************************"); + XBT_INFO("Counter-example execution trace:"); + MC_dump_stack_safety_stateless(mc_stack_safety_stateless); + MC_print_statistics(mc_stats); + xbt_abort(); + }else{ + MC_print_statistics(mc_stats); + xbt_abort(); + } } } @@ -580,7 +590,7 @@ void MC_diff(void){ int i; - XBT_INFO("Number of regions : %d", sn->num_reg); + XBT_INFO("Number of regions : %u", sn->num_reg); for(i=0; inum_reg; i++){