Re: [PATCH v3 07/28] IB/Verbs: Reform IB-ulp ipoib

From: Michael Wang
Date: Tue Apr 14 2015 - 10:33:15 EST




On 04/14/2015 04:18 PM, ira.weiny wrote:
[snip]
>
> /**
> - * cap_ib_cm_dev - Check if any port of device has the capability Infiniband
> - * Communication Manager.
> + * cap_ib_cm_any_port - Check if any port of the device has Infiniband
> + * Communication Manager (CM) support.
> *
> * @device: Device to be checked
> *
> - * Return 0 when all port of the device don't support Infiniband
> - * Communication Manager.
> + * Return 1 if any port of the device supports the IB CM.
> */
> -static inline int cap_ib_cm_dev(struct ib_device *device)
> +static inline int cap_ib_cm_any_port(struct ib_device *device)
> {
> int i;

I think we maybe able to get rid of this helper according to Sean's suggestion :-)

We just need to check the port 1 of HCA see if it support ib cm, seems like
currently there is no case that port 1 support cm while others doesn't.

Regards,
Michael Wang

>
>
>>
>> That seems reasonable, and solves the #10 problem, but we should
>> enforce this invariant during device register.
>>
>> Typically the ports seem to be completely orthogonal (like SA), so in those
>> cases the _dev and restriction makes no sense.
>
> While the ports in ib_sa and ib_umad probably can be orthogonal the current
> implementation does not support that and this patch series obscures that a bit.
>
>>
>> CM seems to be different, so it should probably enforce its rules
>
> Technically, the implementation of the ib_sa and ib_umad modules are not
> different it is just that Michaels patch is not broken.
>
> I'm not saying we can't change the ib_sa and ib_umad modules but the current
> logic is all or nothing. And I think changing this :
>
> 1) require more review and testing
> 2) is not the purpose of this series.
>
> Ira
>
>>
>> Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/