* none: Do not apply any kind of reduction (mandatory for now for
liveness properties)
* dpor: Apply Dynamic Partial Ordering Reduction. Only valid if you
- verify local safety properties.
+ verify local safety properties (default value for safety checks).
\subsection options_modelchecking_visited model-check/visited, Cycle detection
! expect return 1
! timeout 20
$ ${bindir:=.}/../../../bin/simgrid-mc ${bindir:=.}/bugged1 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" --log=xbt_cfg.thresh:warning --cfg=contexts/stack_size:256
-> [ 0.000000] (0:maestro@) Check a safety property
+> [ 0.000000] (0:maestro@) Check a safety property. Reduction is: dpor.
> [ 0.000000] (2:client@HostB) Sent!
> [ 0.000000] (3:client@HostC) Sent!
> [ 0.000000] (1:server@HostA) OK
! expect return 1
! timeout 20
$ ${bindir:=.}/../../../bin/simgrid-mc ${bindir:=.}/bugged2 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" --log=xbt_cfg.thresh:warning --cfg=contexts/stack_size:256
-> [ 0.000000] (0:maestro@) Check a safety property
+> [ 0.000000] (0:maestro@) Check a safety property. Reduction is: dpor.
> [ 0.000000] (2:client@HostB) Send 1
> [ 0.000000] (3:client@HostC) Send 2
> [ 0.000000] (1:server@HostA) Received 1
if (_sg_mc_termination)
XBT_INFO("Check non progressive cycles");
else
- XBT_INFO("Check a safety property");
+ XBT_INFO("Check a safety property. Reduction is: %s.",
+ (reductionMode_ == simgrid::mc::ReductionMode::none ? "none":
+ (reductionMode_ == simgrid::mc::ReductionMode::dpor ? "dpor": "unknown")));
simgrid::mc::session->initialize();
XBT_DEBUG("Starting the safety algorithm");
#!/usr/bin/env tesh
! expect return 1
$ ${bindir:=.}/../../../bin/simgrid-mc ${bindir:=.}/random-bug ${srcdir:=.}/examples/platforms/small_platform.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" --log=xbt_cfg.thresh:warning --cfg=model-check/record:1
-> [ 0.000000] (0:maestro@) Check a safety property
+> [ 0.000000] (0:maestro@) Check a safety property. Reduction is: dpor.
> [ 0.000000] (0:maestro@) **************************
> [ 0.000000] (0:maestro@) *** PROPERTY NOT VALID ***
> [ 0.000000] (0:maestro@) **************************