|
2 | 2 | * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
3 | 3 | * University Research and Technology
|
4 | 4 | * Corporation. All rights reserved.
|
5 |
| - * Copyright (c) 2004-2016 The University of Tennessee and The University |
| 5 | + * Copyright (c) 2004-2021 The University of Tennessee and The University |
6 | 6 | * of Tennessee Research Foundation. All rights
|
7 | 7 | * reserved.
|
8 | 8 | * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
@@ -40,10 +40,10 @@ int mca_pml_ob1_iprobe(int src,
|
40 | 40 | MCA_PML_OB1_RECV_REQUEST_START(&recvreq);
|
41 | 41 |
|
42 | 42 | if( REQUEST_COMPLETE( &(recvreq.req_recv.req_base.req_ompi)) ) {
|
43 |
| - if( NULL != status ) { |
44 |
| - *status = recvreq.req_recv.req_base.req_ompi.req_status; |
45 |
| - } |
46 | 43 | rc = recvreq.req_recv.req_base.req_ompi.req_status.MPI_ERROR;
|
| 44 | + if( MPI_STATUS_IGNORE != status ) { |
| 45 | + OMPI_COPY_STATUS(status, recvreq.req_recv.req_base.req_ompi.req_status, false); |
| 46 | + } |
47 | 47 | *matched = 1;
|
48 | 48 | } else {
|
49 | 49 | *matched = 0;
|
@@ -71,8 +71,8 @@ int mca_pml_ob1_probe(int src,
|
71 | 71 |
|
72 | 72 | ompi_request_wait_completion(&recvreq.req_recv.req_base.req_ompi);
|
73 | 73 | rc = recvreq.req_recv.req_base.req_ompi.req_status.MPI_ERROR;
|
74 |
| - if (NULL != status) { |
75 |
| - *status = recvreq.req_recv.req_base.req_ompi.req_status; |
| 74 | + if( MPI_STATUS_IGNORE != status ) { |
| 75 | + OMPI_COPY_STATUS(status, recvreq.req_recv.req_base.req_ompi.req_status, false); |
76 | 76 | }
|
77 | 77 |
|
78 | 78 | MCA_PML_BASE_RECV_REQUEST_FINI( &recvreq.req_recv );
|
@@ -107,17 +107,16 @@ mca_pml_ob1_improbe(int src,
|
107 | 107 | MCA_PML_OB1_RECV_REQUEST_START(recvreq);
|
108 | 108 |
|
109 | 109 | if( REQUEST_COMPLETE( &(recvreq->req_recv.req_base.req_ompi)) ) {
|
110 |
| - if( NULL != status ) { |
111 |
| - *status = recvreq->req_recv.req_base.req_ompi.req_status; |
| 110 | + rc = recvreq->req_recv.req_base.req_ompi.req_status.MPI_ERROR; |
| 111 | + if( MPI_STATUS_IGNORE != status ) { |
| 112 | + OMPI_COPY_STATUS(status, recvreq->req_recv.req_base.req_ompi.req_status, false); |
112 | 113 | }
|
113 | 114 | *matched = 1;
|
114 | 115 |
|
115 | 116 | (*message)->comm = comm;
|
116 | 117 | (*message)->req_ptr = recvreq;
|
117 | 118 | (*message)->peer = recvreq->req_recv.req_base.req_ompi.req_status.MPI_SOURCE;
|
118 | 119 | (*message)->count = recvreq->req_recv.req_base.req_ompi.req_status._ucount;
|
119 |
| - |
120 |
| - rc = recvreq->req_recv.req_base.req_ompi.req_status.MPI_ERROR; |
121 | 120 | } else {
|
122 | 121 | *matched = 0;
|
123 | 122 |
|
@@ -162,9 +161,8 @@ mca_pml_ob1_mprobe(int src,
|
162 | 161 |
|
163 | 162 | ompi_request_wait_completion(&recvreq->req_recv.req_base.req_ompi);
|
164 | 163 | rc = recvreq->req_recv.req_base.req_ompi.req_status.MPI_ERROR;
|
165 |
| - |
166 |
| - if( NULL != status ) { |
167 |
| - *status = recvreq->req_recv.req_base.req_ompi.req_status; |
| 164 | + if( MPI_STATUS_IGNORE != status ) { |
| 165 | + OMPI_COPY_STATUS(status, recvreq->req_recv.req_base.req_ompi.req_status, false); |
168 | 166 | }
|
169 | 167 |
|
170 | 168 | if( OMPI_SUCCESS == rc ) {
|
|
0 commit comments