A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #181 from bcamus/master
[simgrid.git]
/
src
/
mc
/
mc_checkpoint.cpp
diff --git
a/src/mc/mc_checkpoint.cpp
b/src/mc/mc_checkpoint.cpp
index
75a0531
..
e4fa6e4
100644
(file)
--- a/
src/mc/mc_checkpoint.cpp
+++ b/
src/mc/mc_checkpoint.cpp
@@
-17,10
+17,9
@@
#include "src/internal_config.h"
#include "src/mc/mc_private.h"
#include "src/internal_config.h"
#include "src/mc/mc_private.h"
-#include "xbt/module.h"
-#include <xbt/mmalloc.h>
-#include <xbt/memory.hpp>
#include "src/smpi/private.h"
#include "src/smpi/private.h"
+#include "xbt/mmalloc.h"
+#include "xbt/module.h"
#include "src/xbt/mmalloc/mmprivate.h"
#include "src/xbt/mmalloc/mmprivate.h"
@@
-46,8
+45,7
@@
using simgrid::mc::remote;
using simgrid::mc::remote;
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_checkpoint, mc,
- "Logging specific to mc_checkpoint");
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_checkpoint, mc, "Logging specific to mc_checkpoint");
namespace simgrid {
namespace mc {
namespace simgrid {
namespace mc {
@@
-77,7
+75,7
@@
static void restore(mc_mem_region_t region)
break;
case simgrid::mc::StorageType::Privatized:
break;
case simgrid::mc::StorageType::Privatized:
- for (
const
auto& p : region->privatized_data())
+ for (auto& p : region->privatized_data())
restore(&p);
break;
}
restore(&p);
break;
}
@@
-124,7
+122,7
@@
void add_region(int index, simgrid::mc::Snapshot* snapshot,
if (type == simgrid::mc::RegionType::Data)
xbt_assert(object_info, "Missing object info for object.");
else if (type == simgrid::mc::RegionType::Heap)
if (type == simgrid::mc::RegionType::Data)
xbt_assert(object_info, "Missing object info for object.");
else if (type == simgrid::mc::RegionType::Heap)
- xbt_assert(
!
object_info, "Unexpected object info for heap region.");
+ xbt_assert(
not
object_info, "Unexpected object info for heap region.");
simgrid::mc::RegionSnapshot region;
#if HAVE_SMPI
simgrid::mc::RegionSnapshot region;
#if HAVE_SMPI
@@
-149,7
+147,7
@@
static void get_memory_regions(simgrid::mc::Process* process, simgrid::mc::Snaps
const size_t n = process->object_infos.size();
snapshot->snapshot_regions.resize(n + 1);
int i = 0;
const size_t n = process->object_infos.size();
snapshot->snapshot_regions.resize(n + 1);
int i = 0;
- for (
const
auto const& object_info : process->object_infos)
+ for (auto const& object_info : process->object_infos)
add_region(i++, snapshot, simgrid::mc::RegionType::Data,
object_info.get(),
object_info->start_rw, object_info->start_rw,
add_region(i++, snapshot, simgrid::mc::RegionType::Data,
object_info.get(),
object_info->start_rw, object_info->start_rw,
@@
-203,9
+201,7
@@
void find_object_address(
// This is the non-GNU_RELRO-part of the data segment:
if (reg.prot == PROT_RW) {
// This is the non-GNU_RELRO-part of the data segment:
if (reg.prot == PROT_RW) {
- xbt_assert(!result->start_rw,
- "Multiple read-write segments for %s, not supported",
- maps[i].pathname.c_str());
+ xbt_assert(not result->start_rw, "Multiple read-write segments for %s, not supported", maps[i].pathname.c_str());
result->start_rw = (char*) reg.start_addr;
result->end_rw = (char*) reg.end_addr;
result->start_rw = (char*) reg.start_addr;
result->end_rw = (char*) reg.end_addr;
@@
-219,8
+215,7
@@
void find_object_address(
// This is the text segment:
else if (reg.prot == PROT_RX) {
// This is the text segment:
else if (reg.prot == PROT_RX) {
- xbt_assert(!result->start_exec,
- "Multiple executable segments for %s, not supported",
+ xbt_assert(not result->start_exec, "Multiple executable segments for %s, not supported",
maps[i].pathname.c_str());
result->start_exec = (char*) reg.start_addr;
result->end_exec = (char*) reg.end_addr;
maps[i].pathname.c_str());
result->start_exec = (char*) reg.start_addr;
result->end_exec = (char*) reg.end_addr;
@@
-237,9
+232,7
@@
void find_object_address(
// This is the GNU_RELRO-part of the data segment:
else if (reg.prot == PROT_READ) {
// This is the GNU_RELRO-part of the data segment:
else if (reg.prot == PROT_READ) {
- xbt_assert(!result->start_ro,
- "Multiple read only segments for %s, not supported",
- maps[i].pathname.c_str());
+ xbt_assert(not result->start_ro, "Multiple read only segments for %s, not supported", maps[i].pathname.c_str());
result->start_ro = (char*) reg.start_addr;
result->end_ro = (char*) reg.end_addr;
}
result->start_ro = (char*) reg.start_addr;
result->end_ro = (char*) reg.end_addr;
}
@@
-292,13
+285,13
@@
static void fill_local_variables_values(mc_stack_frame_t stack_frame,
{
simgrid::mc::Process* process = &mc_model_checker->process();
{
simgrid::mc::Process* process = &mc_model_checker->process();
- if (
!scope || !
scope->range.contain(stack_frame->ip))
+ if (
not scope || not
scope->range.contain(stack_frame->ip))
return;
for(simgrid::mc::Variable& current_variable :
scope->variables) {
return;
for(simgrid::mc::Variable& current_variable :
scope->variables) {
- if (
!valid_variable(¤t_variable, scope, (void *)
stack_frame->ip))
+ if (
not valid_variable(¤t_variable, scope, (void*)
stack_frame->ip))
continue;
int region_type;
continue;
int region_type;
@@
-318,7
+311,7
@@
static void fill_local_variables_values(mc_stack_frame_t stack_frame,
if (current_variable.address != nullptr)
new_var.address = current_variable.address;
if (current_variable.address != nullptr)
new_var.address = current_variable.address;
- else if (
!
current_variable.location_list.empty()) {
+ else if (
not
current_variable.location_list.empty()) {
simgrid::dwarf::Location location =
simgrid::dwarf::resolve(
current_variable.location_list,
simgrid::dwarf::Location location =
simgrid::dwarf::resolve(
current_variable.location_list,
@@
-327,7
+320,7
@@
static void fill_local_variables_values(mc_stack_frame_t stack_frame,
(void *) stack_frame->frame_base,
&mc_model_checker->process(), process_index);
(void *) stack_frame->frame_base,
&mc_model_checker->process(), process_index);
- if (
!
location.in_memory())
+ if (
not
location.in_memory())
xbt_die("Cannot handle non-address variable");
new_var.address = location.address();
xbt_die("Cannot handle non-address variable");
new_var.address = location.address();
@@
-367,7
+360,8
@@
static std::vector<s_mc_stack_frame_t> unwind_stack_frames(simgrid::mc::UnwindCo
stack_frame.unw_cursor = c;
stack_frame.unw_cursor = c;
- unw_word_t ip, sp;
+ unw_word_t ip;
+ unw_word_t sp;
unw_get_reg(&c, UNW_REG_IP, &ip);
unw_get_reg(&c, UNW_REG_SP, &sp);
unw_get_reg(&c, UNW_REG_IP, &ip);
unw_get_reg(&c, UNW_REG_SP, &sp);
@@
-409,7
+403,7
@@
static std::vector<s_mc_stack_frame_t> unwind_stack_frames(simgrid::mc::UnwindCo
}
return result;
}
return result;
-}
;
+}
static std::vector<s_mc_snapshot_stack_t> take_snapshot_stacks(simgrid::mc::Snapshot* snapshot)
{
static std::vector<s_mc_snapshot_stack_t> take_snapshot_stacks(simgrid::mc::Snapshot* snapshot)
{
@@
-445,7
+439,7
@@
static std::vector<s_mc_snapshot_stack_t> take_snapshot_stacks(simgrid::mc::Snap
static void snapshot_handle_ignore(simgrid::mc::Snapshot* snapshot)
{
xbt_assert(snapshot->process());
static void snapshot_handle_ignore(simgrid::mc::Snapshot* snapshot)
{
xbt_assert(snapshot->process());
-
+
// Copy the memory:
for (auto const& region : mc_model_checker->process().ignored_regions()) {
s_mc_snapshot_ignored_data_t ignored_data;
// Copy the memory:
for (auto const& region : mc_model_checker->process().ignored_regions()) {
s_mc_snapshot_ignored_data_t ignored_data;
@@
-618,15
+612,14
@@
void restore_snapshot_fds(simgrid::mc::Snapshot* snapshot)
xbt_die("FD snapshot not implemented in client/server mode.");
for (auto const& fd : snapshot->current_fds) {
xbt_die("FD snapshot not implemented in client/server mode.");
for (auto const& fd : snapshot->current_fds) {
-
+
int new_fd = open(fd.filename.c_str(), fd.flags);
if (new_fd < 0)
int new_fd = open(fd.filename.c_str(), fd.flags);
if (new_fd < 0)
- xbt_die("Could not reopen the file %s fo restoring the file descriptor",
- fd.filename.c_str());
+ xbt_die("Could not reopen the file %s fo restoring the file descriptor", fd.filename.c_str());
if (new_fd != fd.number) {
dup2(new_fd, fd.number);
close(new_fd);
if (new_fd != fd.number) {
dup2(new_fd, fd.number);
close(new_fd);
- }
;
+ }
lseek(fd.number, fd.current_position, SEEK_SET);
}
}
lseek(fd.number, fd.current_position, SEEK_SET);
}
}