X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/87116782db3154fb79cd353db446bd226cf15976..0049d1fcfdafba3893e26714d575755194949765:/src/mc/Process.hpp diff --git a/src/mc/Process.hpp b/src/mc/Process.hpp index 6cc3cfdea7..512f6f26af 100644 --- a/src/mc/Process.hpp +++ b/src/mc/Process.hpp @@ -36,6 +36,8 @@ #include "AddressSpace.hpp" #include "mc_protocol.h" +#include "ObjectInformation.hpp" + // Those flags are used to track down which cached information // is still up to date and which information needs to be updated. typedef int mc_process_cache_flags_t; @@ -155,6 +157,16 @@ public: void reset_soft_dirty(); void read_pagemap(uint64_t* pagemap, size_t start_page, size_t page_count); + bool privatized(ObjectInformation const& info) const + { + return privatized_ && info.executable(); + } + bool privatized() const + { + return privatized_; + } + void privatized(bool privatized) { privatized_ = privatized; } + private: void init_memory_map_info(); void refresh_heap(); @@ -170,6 +182,7 @@ private: std::vector ignored_regions_; int clear_refs_fd_; int pagemap_fd_; + bool privatized_; public: // object info // TODO, make private (first, objectify simgrid::mc::ObjectInformation*) std::vector> object_infos;