1
1

set requests vfrag id when matched

This commit was SVN r9402.
Этот коммит содержится в:
Tim Woodall 2006-03-23 23:04:20 +00:00
родитель 3595cd8956
Коммит 0fa49f1297
2 изменённых файлов: 4 добавлений и 2 удалений

Просмотреть файл

@ -224,6 +224,7 @@ do {
(request)->req_recv.req_base.req_ompi.req_status.MPI_TAG = (hdr)->hdr_tag; \
(request)->req_recv.req_base.req_ompi.req_status.MPI_SOURCE = \
(hdr)->hdr_common.hdr_src; \
(request)->req_vfrag0.vf_id = (hdr)->hdr_common.hdr_vid; \
opal_list_append(&proc->matched_receives, (opal_list_item_t*)request); \
ompi_seq_tracker_insert(&proc->seq_recvs_matched, (hdr)->hdr_common.hdr_vid); \
} while(0)
@ -338,7 +339,7 @@ static inline struct mca_pml_dr_recv_request_t* mca_pml_dr_comm_proc_check_match
item != opal_list_get_end(&dr_proc->matched_receives);
item = opal_list_get_next(item)) {
struct mca_pml_dr_recv_request_t* recvreq = (struct mca_pml_dr_recv_request_t*)item;
if(recvreq->req_vfrag->vf_id == vfrag_id)
if(recvreq->req_vfrag0.vf_id == vfrag_id)
return recvreq;
}
return NULL;

Просмотреть файл

@ -644,6 +644,7 @@ int mca_pml_dr_send_request_schedule(mca_pml_dr_send_request_t* sendreq)
* the scheduling logic once for every call.
*/
assert(sendreq->req_vfrag0.vf_recv.pval != NULL);
mca_bml_base_endpoint_t* bml_endpoint = sendreq->req_endpoint;
if(OPAL_THREAD_ADD32(&sendreq->req_lock,1) == 1) {
do {
@ -931,7 +932,7 @@ void mca_pml_dr_send_request_rndv_ack(
/* done? */
sendreq->req_bytes_delivered = ack->hdr_vlen;
if(sendreq->req_bytes_delivered == sendreq->req_send.req_bytes_packed){
if(sendreq->req_bytes_delivered == sendreq->req_send.req_bytes_packed) {
MCA_PML_DR_SEND_REQUEST_PML_COMPLETE(sendreq);
} else {
vfrag->vf_recv = ack->hdr_dst_ptr;