Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
4ed5d192fb4eacf4e9a89c75bd02adabcd2216bd
[simgrid.git] / examples / sthread / pthread-mc-mutex-simpledeadlock.tesh
1
2 # This test raises a deadlock, thus the return code of 3
3 ! expect return 3
4
5 # We ignore the LD_PRELOAD lines from the expected output because they contain the build path
6 ! ignore .*LD_PRELOAD.*
7
8 $ ${bindir:=.}/../../bin/simgrid-mc --cfg=model-check/setenv:LD_PRELOAD=${libdir:=.}/libsgmalloc.so:${libdir:=.}/libsthread.so ${bindir:=.}/pthread-mutex-simpledeadlock
9 > [0.000000] [sthread/INFO] Starting the simulation.
10 > All threads are started.
11 > [0.000000] [mc_dfs/INFO] Start a DFS exploration. Reduction is: dpor.
12 > The thread 0 is terminating.
13 > The thread 1 is terminating.
14 > User's main is terminating.
15 > [0.000000] [sthread/INFO] Starting the simulation.
16 > All threads are started.
17 > The thread 0 is terminating.
18 > The thread 1 is terminating.
19 > User's main is terminating.
20 > [0.000000] [sthread/INFO] Starting the simulation.
21 > All threads are started.
22 > The thread 0 is terminating.
23 > The thread 1 is terminating.
24 > User's main is terminating.
25 > [0.000000] [sthread/INFO] Starting the simulation.
26 > All threads are started.
27 > [0.000000] [mc_global/INFO] **************************
28 > [0.000000] [mc_global/INFO] *** DEADLOCK DETECTED ***
29 > [0.000000] [mc_global/INFO] **************************
30 > [0.000000] [ker_engine/INFO] 3 actors are still running, waiting for something.
31 > [0.000000] [ker_engine/INFO] Legend of the following listing: "Actor <pid> (<name>@<host>): <status>"
32 > [0.000000] [ker_engine/INFO] Actor 1 (main thread@Lilibeth) simcall ActorJoin(pid:2)
33 > [0.000000] [ker_engine/INFO] Actor 2 (thread 1@Lilibeth) simcall MUTEX_WAIT(mutex_id:1 owner:3)
34 > [0.000000] [ker_engine/INFO] Actor 3 (thread 2@Lilibeth) simcall MUTEX_WAIT(mutex_id:0 owner:2)
35 > [0.000000] [mc_global/INFO] Counter-example execution trace:
36 > [0.000000] [mc_global/INFO]   2: MUTEX_ASYNC_LOCK(mutex: 0, owner: 2)
37 > [0.000000] [mc_global/INFO]   2: MUTEX_WAIT(mutex: 0, owner: 2)
38 > [0.000000] [mc_global/INFO]   3: MUTEX_ASYNC_LOCK(mutex: 1, owner: 3)
39 > [0.000000] [mc_global/INFO]   2: MUTEX_ASYNC_LOCK(mutex: 1, owner: 3)
40 > [0.000000] [mc_global/INFO]   3: MUTEX_WAIT(mutex: 1, owner: 3)
41 > [0.000000] [mc_global/INFO]   3: MUTEX_ASYNC_LOCK(mutex: 0, owner: 2)
42 > [0.000000] [mc_global/INFO]   0: 
43 > [0.000000] [mc_Session/INFO] You can debug the problem (and see the whole details) by rerunning out of simgrid-mc with --cfg=model-check/replay:'2;2;3;2;3;3;0'
44 > [0.000000] [mc_dfs/INFO] DFS exploration ended. 38 unique states visited; 4 backtracks (52 transition replays, 11 states visited overall)