/* 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. */
+#include <cstdlib>
+
#include <sys/mman.h>
#include "mc/mc.h"
-#include "mc_snapshot.h"
-#include "RegionSnapshot.hpp"
+#include "src/mc/mc_snapshot.h"
+
+#include "src/mc/ChunkedData.hpp"
+#include "src/mc/RegionSnapshot.hpp"
extern "C" {
{
switch(type_) {
case Free:
- free(p);
+ std::free(p);
break;
case Munmap:
munmap(p, size_);
{
simgrid::mc::RegionSnapshot::flat_data_ptr data;
if (!_sg_mc_ksm)
- data = simgrid::mc::RegionSnapshot::flat_data_ptr((char*) malloc(size));
+ data = simgrid::mc::RegionSnapshot::flat_data_ptr((char*) std::malloc(size));
else {
char* ptr = (char*) mmap(nullptr, size, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_POPULATE, -1, 0);
if (ptr == MAP_FAILED)
RegionSnapshot const* ref_region)
{
simgrid::mc::Process* process = &mc_model_checker->process();
+ assert(process != nullptr);
bool use_soft_dirty = _sg_mc_sparse_checkpoint && _sg_mc_soft_dirty
&& ref_region != nullptr
ref_page_numbers = ref_region->page_data().pagenos();
}
- simgrid::mc::PerPageCopy page_data(
+ simgrid::mc::ChunkedData page_data(
mc_model_checker->page_store(), *process, permanent_addr, page_count,
ref_page_numbers,
use_soft_dirty ? pagemap.data() : nullptr);