forked from Minki/linux
devlink: Change devlink_reload_supported() param type
Change devlink_reload_supported() function to get devlink_ops pointer param instead of devlink pointer param. This change will be used in the next patch to check if devlink reload is supported before devlink instance is allocated. Signed-off-by: Moshe Shemesh <moshe@mellanox.com> Reviewed-by: Jakub Kicinski <kuba@kernel.org> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
846e463a70
commit
69d56e0ea0
@ -2963,9 +2963,9 @@ static void devlink_reload_netns_change(struct devlink *devlink,
|
||||
DEVLINK_CMD_PARAM_NEW);
|
||||
}
|
||||
|
||||
static bool devlink_reload_supported(const struct devlink *devlink)
|
||||
static bool devlink_reload_supported(const struct devlink_ops *ops)
|
||||
{
|
||||
return devlink->ops->reload_down && devlink->ops->reload_up;
|
||||
return ops->reload_down && ops->reload_up;
|
||||
}
|
||||
|
||||
static void devlink_reload_failed_set(struct devlink *devlink,
|
||||
@ -3009,7 +3009,7 @@ static int devlink_nl_cmd_reload(struct sk_buff *skb, struct genl_info *info)
|
||||
struct net *dest_net = NULL;
|
||||
int err;
|
||||
|
||||
if (!devlink_reload_supported(devlink))
|
||||
if (!devlink_reload_supported(devlink->ops))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
err = devlink_resources_validate(devlink, NULL, info);
|
||||
@ -7679,7 +7679,7 @@ EXPORT_SYMBOL_GPL(devlink_register);
|
||||
void devlink_unregister(struct devlink *devlink)
|
||||
{
|
||||
mutex_lock(&devlink_mutex);
|
||||
WARN_ON(devlink_reload_supported(devlink) &&
|
||||
WARN_ON(devlink_reload_supported(devlink->ops) &&
|
||||
devlink->reload_enabled);
|
||||
devlink_notify(devlink, DEVLINK_CMD_DEL);
|
||||
list_del(&devlink->list);
|
||||
@ -8720,7 +8720,7 @@ __devlink_param_driverinit_value_set(struct devlink *devlink,
|
||||
int devlink_param_driverinit_value_get(struct devlink *devlink, u32 param_id,
|
||||
union devlink_param_value *init_val)
|
||||
{
|
||||
if (!devlink_reload_supported(devlink))
|
||||
if (!devlink_reload_supported(devlink->ops))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return __devlink_param_driverinit_value_get(&devlink->param_list,
|
||||
@ -8767,7 +8767,7 @@ int devlink_port_param_driverinit_value_get(struct devlink_port *devlink_port,
|
||||
{
|
||||
struct devlink *devlink = devlink_port->devlink;
|
||||
|
||||
if (!devlink_reload_supported(devlink))
|
||||
if (!devlink_reload_supported(devlink->ops))
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return __devlink_param_driverinit_value_get(&devlink_port->param_list,
|
||||
@ -9968,7 +9968,7 @@ static void __net_exit devlink_pernet_pre_exit(struct net *net)
|
||||
mutex_lock(&devlink_mutex);
|
||||
list_for_each_entry(devlink, &devlink_list, list) {
|
||||
if (net_eq(devlink_net(devlink), net)) {
|
||||
if (WARN_ON(!devlink_reload_supported(devlink)))
|
||||
if (WARN_ON(!devlink_reload_supported(devlink->ops)))
|
||||
continue;
|
||||
err = devlink_reload(devlink, &init_net, NULL);
|
||||
if (err && err != -EOPNOTSUPP)
|
||||
|
Loading…
Reference in New Issue
Block a user