Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
A candidate patch to Github issue #15. Three problems related to TRACE might be corre...
authorMillian Poquet <millian.poquet@inria.fr>
Wed, 10 Jun 2015 17:54:27 +0000 (19:54 +0200)
committerMillian Poquet <millian.poquet@inria.fr>
Wed, 10 Jun 2015 17:54:27 +0000 (19:54 +0200)
commit58a9c67822f4640964044ec485426d090bcb123f
tree543acc852075f9fc24c14d299e7284c177f08d15
parent7861b5b21c9986daad451a2d97a8ed7f908ab5e1
A candidate patch to Github issue #15. Three problems related to TRACE might be corrected by this patch.

Problem 1: the same Pajé container (corresponding to the same MSG_process) could be destroyed more than once by the current TRACE logic.
        Fix: A safer mechanism avoids multiple destroys of the same container.
        Potential problem: the current TRACE logic might be bugged and this fix may only hide the problem.

Problem 2: the Pajé container (corresponding to a MSG_process) was created after the simcall_process_create although the simcall might not return the flow control.
        Fix: The Pajé container is now created before the simcall_process_create (the future SIMIX process ID is hacked thanks to SIMIX_process_get_maxpid())

Code redundancy: The function TRACE_msg_process_end destroyed the process container in the exact same way as it was done in TRACE_msg_process_destroy.
Fix: the TRACE_msg_process_destroy function is now called instead.
src/msg/instr_msg_process.c
src/msg/msg_process.c