[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7fd426d1-61a9-7f45-bf26-05bd9e180277@mellanox.com>
Date: Wed, 5 Sep 2018 15:48:56 +0300
From: Moshe Shemesh <moshe@...lanox.com>
To: David Ahern <dsahern@...il.com>,
"David S. Miller" <davem@...emloft.net>
Cc: Jiri Pirko <jiri@...lanox.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net] devlink: Fix devlink_param_driverinit_value_set()
stub return code
On 9/4/2018 7:13 PM, David Ahern wrote:
> On 9/4/18 7:04 AM, Moshe Shemesh wrote:
>> The stub function returned -EOPNOTSUPP while CONFIG_NET_DEVLINK is off.
>> It caused false warning during driver load. Driver needs to update
>> devlink on a parameter value if devlink module is there, if not it
>> doesn't need any error code.
>>
>> Fixes: ec01aeb1803e ("devlink: Add support for get/set driverinit value")
>> Signed-off-by: Moshe Shemesh <moshe@...lanox.com>
>> Acked-by: Jiri Pirko <jiri@...lanox.com>
>> ---
>> include/net/devlink.h | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/include/net/devlink.h b/include/net/devlink.h
>> index b9b89d6..b467357 100644
>> --- a/include/net/devlink.h
>> +++ b/include/net/devlink.h
>> @@ -781,7 +781,7 @@ static inline bool devlink_dpipe_table_counter_enabled(struct devlink *devlink,
>> devlink_param_driverinit_value_set(struct devlink *devlink, u32 param_id,
>> union devlink_param_value init_val)
>> {
>> - return -EOPNOTSUPP;
>> + return 0;
>> }
>>
>> static inline void
>>
>
> This should be handled by the driver -- check for -EOPNOTSUPP and not
> log an error.
This is a stub inline function.
The return value would be ambiguous as the non-stub function can also
return -EOPNOTSUPP, in case the driver-init mode is not supported for a
parameter.
>
> devlink is generic infrastructure. If a call is made and the operation
> is not supported, then devlink should return an error.
In general the stub functions should take care that the driver won't
feel the missing code as much as possible. That's why
devlink_params_register() returns success and so should this function.
>
Powered by blists - more mailing lists