@@ -477,11 +477,12 @@ int mca_pml_ucx_irecv_init(void *buf, size_t count, ompi_datatype_t *datatype,
477
477
PML_UCX_TRACE_RECV ("irecv_init request *%p=%p" , buf , count , datatype , src ,
478
478
tag , comm , (void * )request , (void * )req );
479
479
480
- req -> ompi .req_state = OMPI_REQUEST_INACTIVE ;
481
- req -> flags = 0 ;
482
- req -> buffer = buf ;
483
- req -> count = count ;
484
- req -> datatype .datatype = mca_pml_ucx_get_datatype (datatype );
480
+ req -> ompi .req_state = OMPI_REQUEST_INACTIVE ;
481
+ req -> ompi .req_mpi_object .comm = comm ;
482
+ req -> flags = 0 ;
483
+ req -> buffer = buf ;
484
+ req -> count = count ;
485
+ req -> datatype .datatype = mca_pml_ucx_get_datatype (datatype );
485
486
486
487
PML_UCX_MAKE_RECV_TAG (req -> tag , req -> recv .tag_mask , tag , src , comm );
487
488
@@ -510,7 +511,8 @@ int mca_pml_ucx_irecv(void *buf, size_t count, ompi_datatype_t *datatype,
510
511
}
511
512
512
513
PML_UCX_VERBOSE (8 , "got request %p" , (void * )req );
513
- * request = req ;
514
+ req -> req_mpi_object .comm = comm ;
515
+ * request = req ;
514
516
return OMPI_SUCCESS ;
515
517
}
516
518
@@ -582,13 +584,15 @@ int mca_pml_ucx_isend_init(const void *buf, size_t count, ompi_datatype_t *datat
582
584
return OMPI_ERROR ;
583
585
}
584
586
585
- req -> ompi .req_state = OMPI_REQUEST_INACTIVE ;
586
- req -> flags = MCA_PML_UCX_REQUEST_FLAG_SEND ;
587
- req -> buffer = (void * )buf ;
588
- req -> count = count ;
589
- req -> tag = PML_UCX_MAKE_SEND_TAG (tag , comm );
590
- req -> send .mode = mode ;
591
- req -> send .ep = ep ;
587
+ req -> ompi .req_state = OMPI_REQUEST_INACTIVE ;
588
+ req -> ompi .req_mpi_object .comm = comm ;
589
+ req -> flags = MCA_PML_UCX_REQUEST_FLAG_SEND ;
590
+ req -> buffer = (void * )buf ;
591
+ req -> count = count ;
592
+ req -> tag = PML_UCX_MAKE_SEND_TAG (tag , comm );
593
+ req -> send .mode = mode ;
594
+ req -> send .ep = ep ;
595
+
592
596
if (MCA_PML_BASE_SEND_BUFFERED == mode ) {
593
597
req -> datatype .ompi_datatype = datatype ;
594
598
OBJ_RETAIN (datatype );
@@ -706,7 +710,8 @@ int mca_pml_ucx_isend(const void *buf, size_t count, ompi_datatype_t *datatype,
706
710
return OMPI_SUCCESS ;
707
711
} else if (!UCS_PTR_IS_ERR (req )) {
708
712
PML_UCX_VERBOSE (8 , "got request %p" , (void * )req );
709
- * request = req ;
713
+ req -> req_mpi_object .comm = comm ;
714
+ * request = req ;
710
715
return OMPI_SUCCESS ;
711
716
} else {
712
717
PML_UCX_ERROR ("ucx send failed: %s" , ucs_status_string (UCS_PTR_STATUS (req )));
@@ -786,7 +791,7 @@ int mca_pml_ucx_send(const void *buf, size_t count, ompi_datatype_t *datatype, i
786
791
}
787
792
788
793
int mca_pml_ucx_iprobe (int src , int tag , struct ompi_communicator_t * comm ,
789
- int * matched , ompi_status_public_t * mpi_status )
794
+ int * matched , ompi_status_public_t * mpi_status )
790
795
{
791
796
static unsigned progress_count = 0 ;
792
797
@@ -811,7 +816,7 @@ int mca_pml_ucx_iprobe(int src, int tag, struct ompi_communicator_t* comm,
811
816
}
812
817
813
818
int mca_pml_ucx_probe (int src , int tag , struct ompi_communicator_t * comm ,
814
- ompi_status_public_t * mpi_status )
819
+ ompi_status_public_t * mpi_status )
815
820
{
816
821
ucp_tag_t ucp_tag , ucp_tag_mask ;
817
822
ucp_tag_recv_info_t info ;
0 commit comments