if (r1->issuer == r2->issuer)
return false;
- /* Wait with timeout transitions are not considered by the independance theorem, thus we consider them as dependant with all other transitions */
+ /* Wait with timeout transitions are not considered by the independence theorem, thus we consider them as dependant with all other transitions */
if ((r1->call == SIMCALL_COMM_WAIT && simcall_comm_wait__get__timeout(r1) > 0)
|| (r2->call == SIMCALL_COMM_WAIT
&& simcall_comm_wait__get__timeout(r2) > 0))
if (use_remote_comm) {
mc_model_checker->process().read(temp_synchro, remote(
static_cast<simgrid::simix::Comm*>(remote_act)));
- act = static_cast<simgrid::simix::Comm*>(temp_synchro.data());
+ act = temp_synchro.getBuffer();
} else
act = remote_act;
if (use_remote_comm) {
mc_model_checker->process().read(temp_synchro, remote(
static_cast<simgrid::simix::Comm*>(remote_act)));
- act = static_cast<simgrid::simix::Comm*>(temp_synchro.data());
+ act = temp_synchro.getBuffer();
} else
act = remote_act;
else
type = "Mutex TRYLOCK";
- s_smx_mutex_t mutex;
- mc_model_checker->process().read_bytes(&mutex, sizeof(mutex),
+ simgrid::mc::Remote<simgrid::simix::Mutex> mutex;
+ mc_model_checker->process().read_bytes(mutex.getBuffer(), sizeof(mutex),
remote(
req->call == SIMCALL_MUTEX_LOCK
? simcall_mutex_lock__get__mutex(req)
));
s_xbt_swag_t mutex_sleeping;
mc_model_checker->process().read_bytes(&mutex_sleeping, sizeof(mutex_sleeping),
- remote(mutex.sleeping));
+ remote(mutex.getBuffer()->sleeping));
args = bprintf("locked = %d, owner = %d, sleeping = %d",
- mutex.locked,
- mutex.owner != nullptr ? (int) mc_model_checker->process().resolveProcess(
- simgrid::mc::remote(mutex.owner))->pid : -1,
+ mutex.getBuffer()->locked,
+ mutex.getBuffer()->owner != nullptr ? (int) mc_model_checker->process().resolveProcess(
+ simgrid::mc::remote(mutex.getBuffer()->owner))->pid : -1,
mutex_sleeping.count);
break;
}
simgrid::mc::Remote<simgrid::simix::Comm> temp_comm;
mc_model_checker->process().read(temp_comm, remote(
static_cast<simgrid::simix::Comm*>(remote_act)));
- simgrid::simix::Comm* comm = static_cast<simgrid::simix::Comm*>(temp_comm.data());
+ simgrid::simix::Comm* comm = temp_comm.getBuffer();
return comm->src_proc && comm->dst_proc;
}
simgrid::mc::Remote<simgrid::simix::Comm> temp_comm;
mc_model_checker->process().read(temp_comm, remote(
static_cast<simgrid::simix::Comm*>(remote_act)));
- simgrid::simix::Comm* comm = static_cast<simgrid::simix::Comm*>(temp_comm.data());
+ simgrid::simix::Comm* comm = temp_comm.getBuffer();
smx_process_t src_proc = mc_model_checker->process().resolveProcess(
simgrid::mc::remote(comm->src_proc));
simgrid::mc::Remote<simgrid::simix::Comm> temp_comm;
mc_model_checker->process().read(temp_comm, remote(
static_cast<simgrid::simix::Comm*>(remote_act)));
- simgrid::simix::Comm* comm = static_cast<simgrid::simix::Comm*>(temp_comm.data());
+ simgrid::simix::Comm* comm = temp_comm.getBuffer();
if (comm->src_proc == nullptr || comm->dst_proc == nullptr) {
if (issuer->host)
label = simgrid::xbt::string_printf("[(%lu)%s] Test FALSE",