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
make sure to define _FILE_OFFSET_BITS as early as possible
[simgrid.git]
/
src
/
mc
/
remote
/
RemoteClient.hpp
diff --git
a/src/mc/remote/RemoteClient.hpp
b/src/mc/remote/RemoteClient.hpp
index
c0d6ec7
..
ca36ebd
100644
(file)
--- a/
src/mc/remote/RemoteClient.hpp
+++ b/
src/mc/remote/RemoteClient.hpp
@@
-1,4
+1,4
@@
-/* Copyright (c) 2008-201
7
. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2008-201
9
. The SimGrid Team. All rights reserved. */
/* 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. */
/* 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. */
@@
-6,37
+6,11
@@
#ifndef SIMGRID_MC_PROCESS_H
#define SIMGRID_MC_PROCESS_H
#ifndef SIMGRID_MC_PROCESS_H
#define SIMGRID_MC_PROCESS_H
-#include <cstddef>
-#include <cstdint>
-
-#include <memory>
-#include <string>
-#include <type_traits>
-#include <vector>
-
-#include <sys/types.h>
-
-#include <simgrid_config.h>
-
-#include "xbt/base.h"
-#include <xbt/mmalloc.h>
-
#include "src/xbt/mmalloc/mmprivate.h"
#include "src/xbt/mmalloc/mmprivate.h"
-
#include "src/mc/remote/Channel.hpp"
#include "src/mc/remote/Channel.hpp"
-#include "src/mc/remote/RemotePtr.hpp"
-
-#include "src/simix/popping_private.hpp"
-#include "src/simix/smx_private.hpp"
-#include <simgrid/simix.h>
-
-#include "src/xbt/memory_map.hpp"
-
-#include "src/mc/AddressSpace.hpp"
#include "src/mc/ObjectInformation.hpp"
#include "src/mc/ObjectInformation.hpp"
-#include "src/mc/mc_base.h"
-#include "src/mc/mc_forward.hpp"
-#include "src/mc/remote/mc_protocol.h"
+
+#include <vector>
namespace simgrid {
namespace mc {
namespace simgrid {
namespace mc {
@@
-44,8
+18,8
@@
namespace mc {
class ActorInformation {
public:
/** MCed address of the process */
class ActorInformation {
public:
/** MCed address of the process */
- RemotePtr<simgrid::
simix::ActorImpl> address = nullptr
;
- Remote<simgrid::
simix
::ActorImpl> copy;
+ RemotePtr<simgrid::
kernel::actor::ActorImpl> address{nullptr}
;
+ Remote<simgrid::
kernel::actor
::ActorImpl> copy;
/** Hostname (owned by `mc_modelchecker->hostnames`) */
const char* hostname = nullptr;
/** Hostname (owned by `mc_modelchecker->hostnames`) */
const char* hostname = nullptr;
@@
-122,10
+96,7
@@
public:
}
std::string read_string(RemotePtr<char> address) const;
}
std::string read_string(RemotePtr<char> address) const;
- std::string read_string(RemotePtr<char> 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<void> address);
// Write memory:
void write_bytes(const void* buffer, size_t len, RemotePtr<void> address);
@@
-193,7
+164,7
@@
public:
std::vector<simgrid::mc::ActorInformation>& dead_actors();
/** Get a local description of a remote SIMIX actor */
std::vector<simgrid::mc::ActorInformation>& dead_actors();
/** Get a local description of a remote SIMIX actor */
- simgrid::mc::ActorInformation* resolveActorInfo(simgrid::mc::RemotePtr<simgrid::
simix
::ActorImpl> actor)
+ simgrid::mc::ActorInformation* resolveActorInfo(simgrid::mc::RemotePtr<simgrid::
kernel::actor
::ActorImpl> actor)
{
xbt_assert(mc_model_checker != nullptr);
if (not actor)
{
xbt_assert(mc_model_checker != nullptr);
if (not actor)
@@
-209,7
+180,7
@@
public:
}
/** Get a local copy of the SIMIX actor structure */
}
/** Get a local copy of the SIMIX actor structure */
- simgrid::
simix::ActorImpl* resolveActor(simgrid::mc::RemotePtr<simgrid::simix
::ActorImpl> process)
+ simgrid::
kernel::actor::ActorImpl* resolveActor(simgrid::mc::RemotePtr<simgrid::kernel::actor
::ActorImpl> process)
{
simgrid::mc::ActorInformation* actor_info = this->resolveActorInfo(process);
if (actor_info)
{
simgrid::mc::ActorInformation* actor_info = this->resolveActorInfo(process);
if (actor_info)
@@
-226,7
+197,6
@@
private:
void refresh_malloc_info();
void refresh_simix();
void refresh_malloc_info();
void refresh_simix();
-private:
pid_t pid_ = -1;
Channel channel_;
bool running_ = false;
pid_t pid_ = -1;
Channel channel_;
bool running_ = false;
@@
-239,17
+209,18
@@
private:
std::vector<s_stack_region_t> stack_areas_;
std::vector<IgnoredHeapRegion> ignored_heap_;
std::vector<s_stack_region_t> stack_areas_;
std::vector<IgnoredHeapRegion> ignored_heap_;
-public: // object info
+public:
+ // object info
// TODO, make private (first, objectify simgrid::mc::ObjectInformation*)
std::vector<std::shared_ptr<simgrid::mc::ObjectInformation>> object_infos;
std::shared_ptr<simgrid::mc::ObjectInformation> libsimgrid_info;
std::shared_ptr<simgrid::mc::ObjectInformation> binary_info;
// TODO, make private (first, objectify simgrid::mc::ObjectInformation*)
std::vector<std::shared_ptr<simgrid::mc::ObjectInformation>> object_infos;
std::shared_ptr<simgrid::mc::ObjectInformation> libsimgrid_info;
std::shared_ptr<simgrid::mc::ObjectInformation> 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<ActorInformation> smx_actors_infos;
/** Copy of `simix_global->process_to_destroy`
std::vector<ActorInformation> smx_actors_infos;
/** Copy of `simix_global->process_to_destroy`
@@
-282,13
+253,13
@@
public:
*/
std::vector<malloc_info> heap_info;
*/
std::vector<malloc_info> 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
unw_addr_space_t unw_addr_space;
/** Underlying libunwind address-space