[libfabric-users] Can only use one NIC port in libfabric 1.6.1

Jörn Schumacher jorn.schumacher at cern.ch
Fri Sep 7 01:47:12 PDT 2018


Hi Arun,

I can confirm that the PR fixes the issue: with 0.0.0.0 as parameter to 
fi_getinfo I can now accept connections from any port.

Thanks for the quick fix.

Cheers,
Jörn

On 09/05/2018 10:15 PM, Ilango, Arun wrote:
> Please try the following PR to see if it resolves your issue:
> 
> https://github.com/ofiwg/libfabric/pull/4386
> 
> Thanks,
> Arun.
> 
> -----Original Message-----
> From: Libfabric-users [mailto:libfabric-users-bounces at lists.openfabrics.org] On Behalf Of Ilango, Arun
> Sent: Wednesday, September 05, 2018 11:17 AM
> To: Jörn Schumacher <jorn.schumacher at cern.ch>; Hefty, Sean <sean.hefty at intel.com>; libfabric-users at lists.openfabrics.org
> Subject: Re: [libfabric-users] Can only use one NIC port in libfabric 1.6.1
> 
> Hi Jörn,
> 
> Thanks for the analysis. It seems when the wildcard address is given in the form of a string "0.0.0.0", the verbs provider doesn't return an fi_info corresponding to a passive endpoint (since ofi_is_only_src_port_set returned false). I can prepare a fix.
> 
> Thanks,
> Arun.
> 
> -----Original Message-----
> From: Libfabric-users [mailto:libfabric-users-bounces at lists.openfabrics.org] On Behalf Of Jörn Schumacher
> Sent: Wednesday, September 05, 2018 10:52 AM
> To: Hefty, Sean <sean.hefty at intel.com>; libfabric-users at lists.openfabrics.org
> Subject: Re: [libfabric-users] Can only use one NIC port in libfabric 1.6.1
> 
> Hi Sean,
> 
> It's not that libfabric binds to a specific address, but to a specific domain in the passive endpoint.
> 
> The domain is only ignored when the domain is set to VERBS_ANY_DOMAIN:
> https://github.com/ofiwg/libfabric/blob/master/prov/verbs/src/verbs_eq.c#L100
> 
> That is set only when no domain name is given:
> https://github.com/ofiwg/libfabric/blob/master/prov/verbs/src/verbs_info.c#L1199
> 
> If you follow the stacktrace of this call, you will see that this is only the case when ofi_is_only_src_port_set yields true. And this is only the case when in the parameters to fi_getinfo the node is NULL:
> https://github.com/ofiwg/libfabric/blob/master/src/common.c#L598
> If anything else is given for node, even "0.0.0.0", the call returns false.
> 
> Cheers,
> Jörn
> 
> On 09/05/2018 06:39 PM, Hefty, Sean wrote:
>>> Looks like this was in the past OK:
>>>
>>> fi_getinfo(FI_VERSION(1, 1), "0.0.0.0", "12345", FI_SOURCE, hints,
>>> &fi))
>> Hmmm... do you know what address the server ends up with asking for this option?
>>
>>> While now you need to use:
>>>
>>> fi_getinfo(FI_VERSION(1, 1), NULL, "12345", FI_SOURCE, hints, &fi))
>> - Sean
>>
>> _______________________________________________
>> Libfabric-users mailing list
>> Libfabric-users at lists.openfabrics.org
>> https://lists.openfabrics.org/mailman/listinfo/libfabric-users
> 
> _______________________________________________
> Libfabric-users mailing list
> Libfabric-users at lists.openfabrics.org
> https://lists.openfabrics.org/mailman/listinfo/libfabric-users
> _______________________________________________
> Libfabric-users mailing list
> Libfabric-users at lists.openfabrics.org
> https://lists.openfabrics.org/mailman/listinfo/libfabric-users
> 


More information about the Libfabric-users mailing list