X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d73456f299cf29a6880fe7b2a7d88ec2fb6123f4..9464eee80e78ebd7783dfa03dcf777a173a14025:/src/mc/Process.cpp diff --git a/src/mc/Process.cpp b/src/mc/Process.cpp index c4c951a8c8..80fa3f2419 100644 --- a/src/mc/Process.cpp +++ b/src/mc/Process.cpp @@ -130,9 +130,9 @@ static ssize_t pread_whole(int fd, void *buf, size_t count, std::uint64_t offset count -= res; buffer += res; offset += res; - } else if (res==0) { + } else if (res==0) return -1; - } else if (errno != EINTR) { + else if (errno != EINTR) { perror("pread_whole"); return -1; } @@ -150,11 +150,10 @@ static ssize_t pwrite_whole(int fd, const void *buf, size_t count, off_t offset) count -= res; buffer += res; offset += res; - } else if (res==0) { + } else if (res==0) return -1; - } else if (errno != EINTR) { + else if (errno != EINTR) return -1; - } } return real_count; } @@ -247,9 +246,8 @@ Process::~Process() this->maestro_stack_start_ = nullptr; this->maestro_stack_end_ = nullptr; - if (this->memory_file >= 0) { + if (this->memory_file >= 0) close(this->memory_file); - } if (this->unw_underlying_addr_space != unw_local_addr_space) { unw_destroy_addr_space(this->unw_underlying_addr_space); @@ -389,34 +387,28 @@ void Process::init_memory_map_info() std::shared_ptr Process::find_object_info(RemotePtr addr) const { - for (auto const& object_info : this->object_infos) { + for (auto const& object_info : this->object_infos) if (addr.address() >= (std::uint64_t)object_info->start - && addr.address() <= (std::uint64_t)object_info->end) { + && addr.address() <= (std::uint64_t)object_info->end) return object_info; - } - } return nullptr; } std::shared_ptr Process::find_object_info_exec(RemotePtr addr) const { - for (std::shared_ptr const& info : this->object_infos) { + for (std::shared_ptr const& info : this->object_infos) if (addr.address() >= (std::uint64_t) info->start_exec - && addr.address() <= (std::uint64_t) info->end_exec) { + && addr.address() <= (std::uint64_t) info->end_exec) return info; - } - } return nullptr; } std::shared_ptr Process::find_object_info_rw(RemotePtr addr) const { - for (std::shared_ptr const& info : this->object_infos) { + for (std::shared_ptr const& info : this->object_infos) if (addr.address() >= (std::uint64_t)info->start_rw - && addr.address() <= (std::uint64_t)info->end_rw) { + && addr.address() <= (std::uint64_t)info->end_rw) return info; - } - } return nullptr; } @@ -589,16 +581,14 @@ void Process::ignore_region(std::uint64_t addr, std::size_t size) std::size_t position; if (current_region->addr == addr) { - if (current_region->size < size) { + if (current_region->size < size) position = cursor + 1; - } else { + else position = cursor; - } - } else if (current_region->addr < addr) { + } else if (current_region->addr < addr) position = cursor + 1; - } else { + else position = cursor; - } ignored_regions_.insert( ignored_regions_.begin() + position, region); } @@ -698,13 +688,11 @@ void Process::ignore_local_variable(const char *var_name, const char *frame_name info->remove_local_variable(var_name, frame_name); } -boost::iterator_range Process::simix_processes() +std::vector& Process::simix_processes() { xbt_assert(mc_mode != MC_MODE_CLIENT); MC_process_smx_refresh(&mc_model_checker->process()); - return boost::iterator_range( - &*smx_process_infos.begin(), - &*smx_process_infos.end()); + return smx_process_infos; } }