From: Marion Guthmuller Date: Fri, 9 Nov 2012 17:37:21 +0000 (+0100) Subject: model-checker : add size of stack in parameter of the function MC_new_stack_area X-Git-Tag: v3_9_rc1~91^2~126^2~9 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/6f63fc36d25e3124be815b48c53b2aaafc1224d8?hp=7e02819630f97eb2bd43ff422d156cc8a60929c5 model-checker : add size of stack in parameter of the function MC_new_stack_area --- diff --git a/src/include/mc/mc.h b/src/include/mc/mc.h index 95b4aa7651..0eb4b694c5 100644 --- a/src/include/mc/mc.h +++ b/src/include/mc/mc.h @@ -45,7 +45,7 @@ void MC_automaton_load(const char *file); /****************************** MC ignore **********************************/ XBT_PUBLIC(void) MC_ignore_heap(void *address, size_t size); XBT_PUBLIC(void) MC_ignore_stack(const char *var_name, const char *frame); -void MC_new_stack_area(void *stack, char *name, void *context); +void MC_new_stack_area(void *stack, char *name, void *context, size_t size); /********************************* Memory *************************************/ XBT_PUBLIC(void) MC_memory_init(void); /* Initialize the memory subsystem */ diff --git a/src/mc/mc_global.c b/src/mc/mc_global.c index 05d71089aa..14bc08538f 100644 --- a/src/mc/mc_global.c +++ b/src/mc/mc_global.c @@ -793,7 +793,7 @@ void MC_ignore_stack(const char *var_name, const char *frame){ } -void MC_new_stack_area(void *stack, char *name, void* context){ +void MC_new_stack_area(void *stack, char *name, void* context, size_t size){ raw_mem_set = (mmalloc_get_current_heap() == raw_heap); @@ -806,6 +806,7 @@ void MC_new_stack_area(void *stack, char *name, void* context){ region->address = stack; region->process_name = strdup(name); region->context = context; + region->size = size; xbt_dynar_push(stacks_areas, ®ion); MC_UNSET_RAW_MEM; diff --git a/src/simix/smx_context_sysv.c b/src/simix/smx_context_sysv.c index 63a0b660a9..9764af2660 100644 --- a/src/simix/smx_context_sysv.c +++ b/src/simix/smx_context_sysv.c @@ -169,7 +169,7 @@ smx_ctx_sysv_create_context_sized(size_t size, xbt_main_func_t code, } if(MC_is_active() && code) - MC_new_stack_area(context, ((smx_process_t)((smx_context_t)context)->data)->name, &(context->uc)); + MC_new_stack_area(context, ((smx_process_t)((smx_context_t)context)->data)->name, &(context->uc), size); return (smx_context_t) context; }