X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9201096042d3e409c3a5e795418027266d4008fc..06b2f93a4aa06ea4672d092c945f103e9248ab50:/examples/msg/mc/bugged1_liveness.tesh diff --git a/examples/msg/mc/bugged1_liveness.tesh b/examples/msg/mc/bugged1_liveness.tesh index 6954ef6956..53442c9920 100644 --- a/examples/msg/mc/bugged1_liveness.tesh +++ b/examples/msg/mc/bugged1_liveness.tesh @@ -1,45 +1,44 @@ #! ./tesh -! expect signal SIGABRT -! timeout 200 -$ ${bindir:=.}/bugged1_liveness --cfg=model-check:1 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" --cfg=contexts/factory:ucontext -> [ 0.000000] (0:@) Configuration change: Set 'model-check' to '1' -> [ 0.000000] (0:@) Check the liveness property promela_bugged1_liveness -> [ 0.000000] (2:client@Fafard) Ask the request -> [ 0.000000] (3:client@Boivin) Ask the request -> [ 0.000000] (2:client@Fafard) Propositions changed : r=1, cs=0 +! expect return 2 +! timeout 20 +! ignore output +$ ${bindir:=.}/../../../bin/simgrid-mc ${bindir:=.}/bugged1_liveness ${srcdir:=.}/../../platforms/platform.xml ${srcdir:=.}/deploy_bugged1_liveness.xml --log=xbt_cfg.thresh:warning "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" --cfg=contexts/factory:ucontext --cfg=contexts/stack_size:256 --cfg=model-check/property:promela_bugged1_liveness +> [ 0.000000] (0:maestro@) Check the liveness property promela_bugged1_liveness +> [ 0.000000] (2:client@Boivin) Ask the request +> [ 0.000000] (3:client@Fafard) Ask the request +> [ 0.000000] (2:client@Boivin) Propositions changed : r=1, cs=0 > [ 0.000000] (1:coordinator@Tremblay) CS idle. Grant immediatly -> [ 0.000000] (3:client@Boivin) 2 got the answer. Sleep a bit and release it +> [ 0.000000] (3:client@Fafard) 2 got the answer. Sleep a bit and release it > [ 0.000000] (1:coordinator@Tremblay) CS release. resource now idle -> [ 0.000000] (3:client@Boivin) Ask the request +> [ 0.000000] (3:client@Fafard) Ask the request > [ 0.000000] (1:coordinator@Tremblay) CS idle. Grant immediatly -> [ 0.000000] (0:@) Next pair (depth = 22, 1 interleave) already reached (equal to state 11) ! -> [ 0.000000] (0:@) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* -> [ 0.000000] (0:@) | ACCEPTANCE CYCLE | -> [ 0.000000] (0:@) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* -> [ 0.000000] (0:@) Counter-example that violates formula : -> [ 0.000000] (0:@) [(1)coordinator] iRecv (dst=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(2)client] iSend (src=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(1)coordinator] Wait (comm=(verbose only) [(2)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(1)coordinator] iRecv (dst=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(2)client] Wait (comm=(verbose only) [(2)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(2)client] iRecv (dst=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(3)client] iSend (src=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(1)coordinator] Wait (comm=(verbose only) [(3)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(1)coordinator] iSend (src=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(3)client] Wait (comm=(verbose only) [(3)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(3)client] iRecv (dst=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(1)coordinator] Wait (comm=(verbose only) [(1)coordinator -> (3)client]) -> [ 0.000000] (0:@) [(1)coordinator] iRecv (dst=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(3)client] Wait (comm=(verbose only) [(1)coordinator -> (3)client]) -> [ 0.000000] (0:@) [(3)client] iSend (src=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(1)coordinator] Wait (comm=(verbose only) [(3)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(1)coordinator] iRecv (dst=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(3)client] Wait (comm=(verbose only) [(3)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(3)client] iSend (src=client, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) [(1)coordinator] Wait (comm=(verbose only) [(3)client -> (1)coordinator]) -> [ 0.000000] (0:@) [(1)coordinator] iSend (src=coordinator, buff=(verbose only), size=(verbose only)) -> [ 0.000000] (0:@) Expanded pairs = 23 -> [ 0.000000] (0:@) Visited pairs = 21 -> [ 0.000000] (0:@) Executed transitions = 21 - +> [ 0.000000] (0:maestro@) Pair 22 already reached (equal to pair 10) ! +> [ 0.000000] (0:maestro@) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* +> [ 0.000000] (0:maestro@) | ACCEPTANCE CYCLE | +> [ 0.000000] (0:maestro@) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* +> [ 0.000000] (0:maestro@) Counter-example that violates formula : +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] iRecv(dst=(1)Tremblay (coordinator), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(2)Boivin (client)] iSend(src=(2)Boivin (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] Wait(comm=(verbose only) [(2)Boivin (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] iRecv(dst=(1)Tremblay (coordinator), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(2)Boivin (client)] Wait(comm=(verbose only) [(2)Boivin (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(2)Boivin (client)] iRecv(dst=(2)Boivin (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] iSend(src=(3)Fafard (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] Wait(comm=(verbose only) [(3)Fafard (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] iSend(src=(1)Tremblay (coordinator), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] Wait(comm=(verbose only) [(3)Fafard (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] iRecv(dst=(3)Fafard (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] Wait(comm=(verbose only) [(1)Tremblay (coordinator)-> (3)Fafard (client)]) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] iRecv(dst=(1)Tremblay (coordinator), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] Wait(comm=(verbose only) [(1)Tremblay (coordinator)-> (3)Fafard (client)]) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] iSend(src=(3)Fafard (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] Wait(comm=(verbose only) [(3)Fafard (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] iRecv(dst=(1)Tremblay (coordinator), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] Wait(comm=(verbose only) [(3)Fafard (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) [(3)Fafard (client)] iSend(src=(3)Fafard (client), buff=(verbose only), size=(verbose only)) +> [ 0.000000] (0:maestro@) [(1)Tremblay (coordinator)] Wait(comm=(verbose only) [(3)Fafard (client)-> (1)Tremblay (coordinator)]) +> [ 0.000000] (0:maestro@) Expanded pairs = 22 +> [ 0.000000] (0:maestro@) Visited pairs = 20 +> [ 0.000000] (0:maestro@) Executed transitions = 20 +> [ 0.000000] (0:maestro@) Counter-example depth : 21