X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/eb185f8c5c3adabbc6c8918c4d595fe67e075f90..fa194cfd4dc1694b23d8f5c4118005fa70a92db4:/src/kernel/activity/IoImpl.cpp diff --git a/src/kernel/activity/IoImpl.cpp b/src/kernel/activity/IoImpl.cpp index 8684066824..b7c10da2c8 100644 --- a/src/kernel/activity/IoImpl.cpp +++ b/src/kernel/activity/IoImpl.cpp @@ -18,15 +18,10 @@ void simcall_HANDLER_io_wait(smx_simcall_t simcall, simgrid::kernel::activity::I XBT_DEBUG("Wait for execution of synchro %p, state %d", synchro, (int)synchro->state_); /* Associate this simcall to the synchro */ - synchro->simcalls_.push_back(simcall); - simcall->issuer->waiting_synchro = synchro; + synchro->register_simcall(simcall); - /* set surf's synchro */ - if (MC_is_active() || MC_record_replay_is_active()) { + if (MC_is_active() || MC_record_replay_is_active()) synchro->state_ = SIMIX_DONE; - synchro->finish(); - return; - } /* If the synchro is already finished then perform the error handling */ if (synchro->state_ != SIMIX_RUNNING) @@ -59,7 +54,7 @@ IoImpl* IoImpl::start() { state_ = SIMIX_RUNNING; surf_action_ = storage_->io_start(size_, type_); - surf_action_->set_data(this); + surf_action_->set_activity(this); XBT_DEBUG("Create IO synchro %p %s", this, get_cname()); IoImpl::on_start(*this);