X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d8490fabe30b9c9302c9d345054098c15ee90e94..60b5be19e93620a8ec8394cfa12c36d9cfad98a0:/src/mc/checker/SimcallInspector.hpp diff --git a/src/mc/checker/SimcallInspector.hpp b/src/mc/checker/SimcallInspector.hpp index 940578c290..35287d4a98 100644 --- a/src/mc/checker/SimcallInspector.hpp +++ b/src/mc/checker/SimcallInspector.hpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2019. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2019-2020. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -13,22 +13,22 @@ namespace mc { class SimcallInspector { public: - /** whether this transition can currently be taken without blocking. + /** Whether this transition can currently be taken without blocking. * * For example, a mutex_lock is not enabled when the mutex is not free. * A comm_receive is not enabled before the corresponding send has been issued. */ virtual bool is_enabled() { return true; } - /** Execute the simcall, from the kernel POV. + /** Prepare the simcall to be executed * - * Most of the time, this action is in charge of doing what the perf models would have done if not in MC mode. - * For example, if it's a random(), choose the value to explore next. If it's a waitany, choose the terminated - * communication to consider now. + * Do the choices that the platform would have done in non-MC settings. + * For example if it's a waitany, pick the communication that should finish first. + * If it's a random(), choose the next value to explore. */ - virtual void fire() = 0; + virtual void arm() {} - /** Some simcalls may only be observable under some circomstances. + /** Some simcalls may only be observable under some circumstances. * Most simcalls are not visible from the MC because they don't have an inspector at all. */ virtual bool is_visible() { return true; } virtual std::string to_string() = 0;