X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d33e7a563a884247bff85406dcc589a70a162e79..c9e3badfcca0d44e112171cefd237ed3f0ae01ca:/src/mc/remote/RemoteClient.hpp diff --git a/src/mc/remote/RemoteClient.hpp b/src/mc/remote/RemoteClient.hpp index 34c31b698f..b681e59b31 100644 --- a/src/mc/remote/RemoteClient.hpp +++ b/src/mc/remote/RemoteClient.hpp @@ -26,8 +26,8 @@ #include "src/mc/remote/Channel.hpp" #include "src/mc/remote/RemotePtr.hpp" -#include "src/simix/popping_private.h" -#include "src/simix/smx_private.h" +#include "src/simix/popping_private.hpp" +#include "src/simix/smx_private.hpp" #include #include "src/xbt/memory_map.hpp" @@ -44,7 +44,7 @@ namespace mc { class ActorInformation { public: /** MCed address of the process */ - RemotePtr address = nullptr; + RemotePtr address{nullptr}; Remote copy; /** Hostname (owned by `mc_modelchecker->hostnames`) */ @@ -122,10 +122,7 @@ public: } std::string read_string(RemotePtr address) const; - std::string read_string(RemotePtr address, std::size_t len) const - { - return AddressSpace::read_string(address, len); - } + using AddressSpace::read_string; // Write memory: void write_bytes(const void* buffer, size_t len, RemotePtr address); @@ -226,7 +223,6 @@ private: void refresh_malloc_info(); void refresh_simix(); -private: pid_t pid_ = -1; Channel channel_; bool running_ = false; @@ -239,17 +235,18 @@ private: std::vector stack_areas_; std::vector ignored_heap_; -public: // object info +public: + // object info // TODO, make private (first, objectify simgrid::mc::ObjectInformation*) std::vector> object_infos; std::shared_ptr libsimgrid_info; std::shared_ptr binary_info; -public: // Copies of MCed SMX data structures - /** Copy of `simix_global->process_list` - * - * See mc_smx.c. - */ + // Copies of MCed SMX data structures + /** Copy of `simix_global->process_list` + * + * See mc_smx.c. + */ std::vector smx_actors_infos; /** Copy of `simix_global->process_to_destroy` @@ -282,13 +279,13 @@ public: */ std::vector heap_info; -public: // Libunwind-data - /** Full-featured MC-aware libunwind address space for the process - * - * This address space is using a simgrid::mc::UnwindContext* - * (with simgrid::mc::Process* / simgrid::mc::AddressSpace* - * and unw_context_t). - */ + // Libunwind-data + /** Full-featured MC-aware libunwind address space for the process + * + * This address space is using a simgrid::mc::UnwindContext* + * (with simgrid::mc::Process* / simgrid::mc::AddressSpace* + * and unw_context_t). + */ unw_addr_space_t unw_addr_space; /** Underlying libunwind address-space @@ -302,6 +299,9 @@ public: // Libunwind-data /** The corresponding context */ void* unw_underlying_context; + + /* Check whether the given actor is enabled */ + bool actor_is_enabled(aid_t pid); }; /** Open a FD to a remote process memory (`/dev/$pid/mem`)