Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
jedule: obey our coding standards
[simgrid.git] / src / smpi / mpi / smpi_request.cpp
index 988dc1d..4732410 100644 (file)
@@ -107,6 +107,10 @@ size_t Request::real_size(){
   return real_size_;
 }
 
+void Request::ref(){
+  refcount_++;
+}
+
 void Request::unref(MPI_Request* request)
 {
   if((*request) != MPI_REQUEST_NULL){
@@ -361,7 +365,7 @@ void Request::start()
   xbt_assert(action_ == nullptr, "Cannot (re-)start unfinished communication");
   flags_ &= ~MPI_REQ_PREPARED;
   flags_ &= ~MPI_REQ_FINISHED;
-  refcount_++;
+  this->ref();
 
   if ((flags_ & MPI_REQ_RECV) != 0) {
     this->print_request("New recv");
@@ -431,11 +435,11 @@ void Request::start()
       void *oldbuf = nullptr;
       detached_ = 1;
       XBT_DEBUG("Send request %p is detached", this);
-      refcount_++;
+      this->ref();
       if (not(old_type_->flags() & DT_FLAG_DERIVED)) {
         oldbuf = buf_;
         if (not process->replaying() && oldbuf != nullptr && size_ != 0) {
-          if ((smpi_privatize_global_variables != SmpiPrivStrategies::None) &&
+          if ((smpi_privatize_global_variables != SmpiPrivStrategies::NONE) &&
               (static_cast<char*>(buf_) >= smpi_data_exe_start) &&
               (static_cast<char*>(buf_) < smpi_data_exe_start + smpi_data_exe_size)) {
             XBT_DEBUG("Privatization : We are sending from a zone inside global memory. Switch data segment ");
@@ -753,7 +757,7 @@ void Request::finish_wait(MPI_Request* request, MPI_Status * status)
     if (((req->flags_ & MPI_REQ_ACCUMULATE) != 0) ||
         (datatype->flags() & DT_FLAG_DERIVED)) { // && (not smpi_is_shared(req->old_buf_))){
 
-      if (not smpi_process()->replaying() && smpi_privatize_global_variables != SmpiPrivStrategies::None &&
+      if (not smpi_process()->replaying() && smpi_privatize_global_variables != SmpiPrivStrategies::NONE &&
           static_cast<char*>(req->old_buf_) >= smpi_data_exe_start &&
           static_cast<char*>(req->old_buf_) < smpi_data_exe_start + smpi_data_exe_size) {
         XBT_VERB("Privatization : We are unserializing to a zone in global memory  Switch data segment ");
@@ -870,7 +874,7 @@ int Request::waitany(int count, MPI_Request requests[], MPI_Status * status)
         if ((requests[index] == MPI_REQUEST_NULL) ||
             (not((requests[index]->flags_ & MPI_REQ_ACCUMULATE) && (requests[index]->flags_ & MPI_REQ_RECV)))) {
           finish_wait(&requests[index],status);
-          if (requests[i] != MPI_REQUEST_NULL && (requests[i]->flags_ & MPI_REQ_NON_PERSISTENT))
+          if (requests[index] != MPI_REQUEST_NULL && (requests[index]->flags_ & MPI_REQ_NON_PERSISTENT))
             requests[index] = MPI_REQUEST_NULL;
         }
       }