Re: [rdma-next v1 13/22] RDMA/hns: Remove empty functions

Selvin Xavier
2017-08-21T04:39:10Z

On Fri, Aug 18, 2017 at 9:10 PM, Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> wrote:

>>
>> The following patch helps. But it is like a workaround to solve the problem.
>>
>> diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c
>> index d5ca101..59911dd 100644
>> --- a/drivers/infiniband/core/cm.c
>> +++ b/drivers/infiniband/core/cm.c
>> @@ -4189,7 +4189,7 @@ static void cm_add_one(struct ib_device *ib_device)
>> goto error2;
>>
>> ret = ib_modify_port(ib_device, i, 0, &port_modify);
>> - if (ret)
>> + if (ret && ret != -ENOSYS)
>> goto error3;
>>
>> count++;
>>
>> Or should we have the modify_port hook with some basic checks?
>
> I think that your proposal is right thing to do. The driver should
> properly return the status of its callbacks (-ENOSYS) and it is
> responsibility of the caller to decide what to do in such case.
>

> The dummy function (return 0) hides the fact that modify_port do
> nothing and it can be wrong for some callers.
>
I am bit confused. You support the proposal to have a modify_port with
some basic check.. right?
> Thanks