1 # This test raises a property violation, thus the return code of 1
4 # We ignore the LD_PRELOAD lines from the expected output because they contain the build path
5 ! ignore .*LD_PRELOAD.*
7 $ $VALGRIND_NO_TRACE_CHILDREN ${bindir:=.}/../../../bin/simgrid-mc --cfg=model-check/sleep-set:true --cfg=model-check/setenv:LD_PRELOAD=${libdir:=.}/libsthread.so ${bindir:=.}/stdobject "--log=root.fmt:[%11.6r]%e(%a@%h)%e%m%n" --log=no_loc
8 > [ 0.000000] (maestro@) Configuration change: Set 'model-check/sleep-set' to 'true'
9 > [ 0.000000] (maestro@) Starting the simulation.
10 > starting two helpers...
11 > waiting for helpers to finish...
12 > [ 0.000000] (maestro@) Start a DFS exploration. Reduction is: dpor.
13 > [ 0.000000] (maestro@) thread 1 takes &v
14 > [ 0.000000] (maestro@) thread 1 releases &v
15 > [ 0.000000] (maestro@) thread 2 takes &v
16 > [ 0.000000] (maestro@) thread 2 releases &v
17 > v = { 1, 2, 3, 5, 8, 13, 21, 21, };
18 > [ 0.000000] (maestro@) thread 1 takes &v
19 > [ 0.000000] (maestro@) thread 2 takes &v
20 > [ 0.000000] (maestro@) Unprotected concurent access to &v: thread 1 vs thread 2 (locations hidden because of --log=no_loc).
21 > [ 0.000000] (maestro@) **************************
22 > [ 0.000000] (maestro@) *** PROPERTY NOT VALID ***
23 > [ 0.000000] (maestro@) **************************
24 > [ 0.000000] (maestro@) Counter-example execution trace:
25 > [ 0.000000] (maestro@) 2: BeginObjectAccess(&v)
26 > [ 0.000000] (maestro@) 3: BeginObjectAccess(&v)
27 > [ 0.000000] (maestro@) You can debug the problem (and see the whole details) by rerunning out of simgrid-mc with --cfg=model-check/replay:'2;3'
28 > [ 0.000000] (maestro@) DFS exploration ended. 7 unique states visited; 1 backtracks (9 transition replays, 1 states visited overall)