@@ -714,22 +714,7 @@ static int rml_ofi_component_init(void)
714
714
/* Register the ofi address of this peer with PMIX server only if it is a user process /
715
715
* for daemons the set/get_contact_info is used to exchange this information */
716
716
if (ORTE_PROC_IS_APP ) {
717
- switch ( orte_rml_ofi .ofi_prov [cur_ofi_prov ].fabric_info -> addr_format )
718
- {
719
- case FI_SOCKADDR_IN :
720
- opal_output_verbose (20 ,orte_rml_base_framework .framework_output ,
721
- "%s:%d In FI_SOCKADDR_IN. " ,__FILE__ ,__LINE__ );
722
- /* Address is of type sockaddr_in (IPv4) */
723
- opal_output_verbose (20 ,orte_rml_base_framework .framework_output ,
724
- "%s sending Opal modex string for ofi_prov_it %d, epnamelen = %d " ,
725
- ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ),cur_ofi_prov ,orte_rml_ofi .ofi_prov [cur_ofi_prov ].epnamelen );
726
- /*[debug] - print the sockaddr - port and s_addr */
727
- struct sockaddr_in * ep_sockaddr = (struct sockaddr_in * )orte_rml_ofi .ofi_prov [cur_ofi_prov ].ep_name ;
728
- opal_output_verbose (20 ,orte_rml_base_framework .framework_output ,
729
- "%s port = 0x%x, InternetAddr = %s " ,
730
- ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ),ntohs (ep_sockaddr -> sin_port ),inet_ntoa (ep_sockaddr -> sin_addr ));
731
- /*[end debug]*/
732
- asprintf (& pmix_key ,"%s%d" ,OPAL_RML_OFI_FI_SOCKADDR_IN ,cur_ofi_prov );
717
+ asprintf (& pmix_key ,"%s%d" ,orte_rml_ofi .ofi_prov [cur_ofi_prov ].fabric_info -> fabric_attr -> prov_name ,cur_ofi_prov );
733
718
opal_output_verbose (25 , orte_rml_base_framework .framework_output ,
734
719
"%s calling OPAL_MODEX_SEND_STRING key - %s " ,
735
720
ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ), pmix_key );
@@ -746,35 +731,7 @@ static int rml_ofi_component_init(void)
746
731
/*abort this current transport, but check if next transport can be opened*/
747
732
continue ;
748
733
}
749
- break ;
750
- case FI_ADDR_PSMX :
751
- opal_output_verbose (20 ,orte_rml_base_framework .framework_output ,
752
- "%s:%d In FI_ADDR_PSMX. " ,__FILE__ ,__LINE__ );
753
- /* Address is of type Intel proprietery PSMX */
754
- OPAL_MODEX_SEND_STRING ( ret , OPAL_PMIX_GLOBAL ,
755
- OPAL_RML_OFI_FI_ADDR_PSMX ,orte_rml_ofi .ofi_prov [cur_ofi_prov ].ep_name ,
756
- orte_rml_ofi .ofi_prov [cur_ofi_prov ].epnamelen );
757
- opal_output_verbose (20 ,orte_rml_base_framework .framework_output ,
758
- "%s:%d Opal modex send completed for FI_ADDR_PSMX. " ,__FILE__ ,__LINE__ );
759
- if (ORTE_SUCCESS != ret ) {
760
- opal_output_verbose (1 , orte_rml_base_framework .framework_output ,
761
- "%s:%d: OPAL_MODEX_SEND failed: %s\n" ,
762
- __FILE__ , __LINE__ , fi_strerror (- ret ));
763
- free_ofi_prov_resources (cur_ofi_prov );
764
- /*abort this current transport, but check if next transport can be opened*/
765
- continue ;
766
- }
767
- break ;
768
- default :
769
- opal_output_verbose (1 ,orte_rml_base_framework .framework_output ,
770
- "%s:%d ERROR: Cannot register address, Unhandled addr_format - %d, ep_name - %s " ,
771
- __FILE__ ,__LINE__ ,orte_rml_ofi .ofi_prov [cur_ofi_prov ].fabric_info -> addr_format ,
772
- orte_rml_ofi .ofi_prov [cur_ofi_prov ].ep_name );
773
- free_ofi_prov_resources (cur_ofi_prov );
774
- /*abort this current transport, but check if next transport can be opened*/
775
- continue ;
776
- }
777
- }
734
+ }
778
735
779
736
/**
780
737
* Set the ANY_SRC address.
@@ -1046,18 +1003,16 @@ static orte_rml_base_module_t* open_conduit(opal_list_t *attributes)
1046
1003
1047
1004
static void pr_cons (orte_rml_ofi_peer_t * ptr )
1048
1005
{
1049
- ptr -> socket_ep = NULL ;
1050
- ptr -> socket_ep_len = 0 ;
1051
- ptr -> psmx_ep = NULL ;
1052
- ptr -> psmx_ep_len = 0 ;
1006
+ ptr -> ofi_ep = NULL ;
1007
+ ptr -> ofi_ep_len = 0 ;
1053
1008
}
1009
+
1054
1010
static void pr_des (orte_rml_ofi_peer_t * ptr )
1055
1011
{
1056
- if ( 0 < ptr -> socket_ep_len )
1057
- free ( ptr -> socket_ep );
1058
- if ( NULL != ptr -> psmx_ep )
1059
- free ( ptr -> psmx_ep );
1012
+ if ( 0 < ptr -> ofi_ep_len )
1013
+ free ( ptr -> ofi_ep );
1060
1014
}
1015
+
1061
1016
OBJ_CLASS_INSTANCE (orte_rml_ofi_peer_t ,
1062
1017
opal_object_t ,
1063
1018
pr_cons , pr_des );
@@ -1116,7 +1071,7 @@ static void ofi_set_contact_info (const char *uri)
1116
1071
*/
1117
1072
if (NULL == uri ) {
1118
1073
opal_output (0 , "%s: NULL URI" , ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ));
1119
- ORTE_FORCED_TERMINATE (1 );
1074
+ /* [TODO] ORTE_FORCED_TERMINATE(1);*/
1120
1075
return ;
1121
1076
}
1122
1077
@@ -1180,12 +1135,7 @@ static void process_uri( char *uri)
1180
1135
ui64 , (void * * )& pr ) ||
1181
1136
NULL == pr ) {
1182
1137
pr = OBJ_NEW (orte_rml_ofi_peer_t );
1183
- /* populate the peer object with the ofi addresses *
1184
- * [TBD] tot_reqd is hard-coded to 1 for test purpose, the logic needs to be changed *
1185
- * to send some ofi_prov specific information in string as identifier for the addr foll it *
1186
- * store entire string in hash table and then interpret ofi address based on ofi_prov info *
1187
- * either her or in send logic. The peer object need to be modified to hold ofi_prov info
1188
- * and ofi address in a list */
1138
+ /* populate the peer object with the ofi addresses */
1189
1139
for (i = 0 ; NULL != uris [i ] && tot_found < tot_reqd ; i ++ ) {
1190
1140
ofiuri = strdup (uris [i ]);
1191
1141
if (NULL == ofiuri ) {
@@ -1197,11 +1147,11 @@ static void process_uri( char *uri)
1197
1147
/* Handle the OFI address types in the uri - OFIADDR(ofiaddr) */
1198
1148
if (0 == strncmp (ofiuri , OFIADDR , strlen (OFIADDR )) ) {
1199
1149
/* allocate and initialise the peer object to be inserted in hashtable */
1200
- pr -> socket_ep_len = sizeof (struct sockaddr_in );
1150
+ pr -> ofi_ep_len = sizeof (struct sockaddr_in );
1201
1151
ep_sockaddr = malloc ( sizeof ( struct sockaddr_in ) );
1202
1152
/* ofiuri for socket provider is of format - ofi-socket:<sin_family,sin_addr,sin_port> */
1203
1153
convert_to_sockaddr (ofiuri , ep_sockaddr );
1204
- pr -> socket_ep = (void * )ep_sockaddr ;
1154
+ pr -> ofi_ep = (void * )ep_sockaddr ;
1205
1155
tot_found ++ ;
1206
1156
}
1207
1157
free ( ofiuri );
@@ -1223,8 +1173,8 @@ static void process_uri( char *uri)
1223
1173
opal_output_verbose (15 , orte_rml_base_framework .framework_output ,
1224
1174
"%s: ofi sock address length = %zd " ,
1225
1175
ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ),
1226
- pr -> socket_ep_len );
1227
- struct sockaddr_in * ep_sockaddr = (struct sockaddr_in * )pr -> socket_ep ;
1176
+ pr -> ofi_ep_len );
1177
+ struct sockaddr_in * ep_sockaddr = (struct sockaddr_in * )pr -> ofi_ep ;
1228
1178
opal_output_verbose (15 ,orte_rml_base_framework .framework_output ,
1229
1179
"%s OFI set_name() port = 0x%x, InternetAddr = %s " ,
1230
1180
ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ),ntohs (ep_sockaddr -> sin_port ),inet_ntoa (ep_sockaddr -> sin_addr ));
@@ -1261,7 +1211,6 @@ void convert_to_sockaddr( char *ofiuri, struct sockaddr_in* ep_sockaddr)
1261
1211
port = atoi ( sin_port );
1262
1212
ep_sockaddr -> sin_port = htons (port );
1263
1213
res = inet_aton (sin_addr ,(struct in_addr * )& ep_sockaddr -> sin_addr );
1264
-
1265
1214
opal_output_verbose (10 ,orte_rml_base_framework .framework_output ,
1266
1215
"%s OFI convert_to_sockaddr() port = 0x%x, InternetAddr = %s " ,
1267
1216
ORTE_NAME_PRINT (ORTE_PROC_MY_NAME ),ntohs (ep_sockaddr -> sin_port ),
0 commit comments