X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1113792240aa3e88b1a2ba75474f338ad8db2ca2..2bd9a37bbb72eac4ed613b3d6953aba6555e2e92:/src/mc/mc_private.h diff --git a/src/mc/mc_private.h b/src/mc/mc_private.h index 679ca45cea..b5f061acd7 100644 --- a/src/mc/mc_private.h +++ b/src/mc/mc_private.h @@ -7,6 +7,8 @@ #ifndef MC_PRIVATE_H #define MC_PRIVATE_H +#include + #include "simgrid_config.h" #include #include @@ -21,6 +23,7 @@ #include "mc/datatypes.h" #include "xbt/fifo.h" #include "xbt/config.h" + #include "xbt/function_types.h" #include "xbt/mmalloc.h" #include "../simix/smx_private.h" @@ -38,12 +41,15 @@ SG_BEGIN_DECL() typedef struct s_mc_function_index_item s_mc_function_index_item_t, *mc_function_index_item_t; -/****************************** Snapshots ***********************************/ - -extern xbt_dynar_t mc_checkpoint_ignore; - /********************************* MC Global **********************************/ +/** Initialisation of the model-checker + * + * @param pid PID of the target process + * @param socket FD for the communication socket **in server mode** (or -1 otherwise) + */ +void MC_init_pid(pid_t pid, int socket); + extern FILE *dot_output; extern const char* colors[13]; extern xbt_parmap_t parmap; @@ -51,11 +57,12 @@ extern xbt_parmap_t parmap; extern int user_max_depth_reached; int MC_deadlock_check(void); -void MC_replay(xbt_fifo_t stack, int start); -void MC_replay_liveness(xbt_fifo_t stack, int all_stack); +void MC_replay(xbt_fifo_t stack); +void MC_replay_liveness(xbt_fifo_t stack); void MC_show_deadlock(smx_simcall_t req); void MC_show_stack_safety(xbt_fifo_t stack); void MC_dump_stack_safety(xbt_fifo_t stack); +void MC_show_non_termination(void); /** Stack (of `mc_state_t`) representing the current position of the * the MC in the exploration graph @@ -88,8 +95,7 @@ typedef struct s_mc_comparison_times{ double nb_processes_comparison_time; double bytes_used_comparison_time; double stacks_sizes_comparison_time; - double binary_global_variables_comparison_time; - double libsimgrid_global_variables_comparison_time; + double global_variables_comparison_time; double heap_comparison_time; double stacks_comparison_time; }s_mc_comparison_times_t, *mc_comparison_times_t; @@ -136,15 +142,6 @@ bool mc_address_test(mc_address_set_t p, const void* value); * */ uint64_t mc_hash_processes_state(int num_state, xbt_dynar_t stacks); -/* *********** Snapshot *********** */ - -#define MC_LOG_REQUEST(log, req, value) \ - if (XBT_LOG_ISENABLED(log, xbt_log_priority_debug)) { \ - char* req_str = MC_request_to_string(req, value); \ - XBT_DEBUG("Execute: %s", req_str); \ - xbt_free(req_str); \ - } - /** @brief Dump the stacks of the application processes * * This functions is currently not used but it is quite convenient