mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
net: devlink: convert reload command to take implicit devlink->lock
Convert reload command to behave the same way as the rest of the commands and let if be called with devlink->lock held. Remove the temporary devl_lock taking from drivers. As the DEVLINK_NL_FLAG_NO_LOCK flag is no longer used, remove it alongside. Signed-off-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
c2368b1980
commit
644a66c60f
@@ -948,18 +948,15 @@ static int nsim_dev_reload_down(struct devlink *devlink, bool netns_change,
|
||||
{
|
||||
struct nsim_dev *nsim_dev = devlink_priv(devlink);
|
||||
|
||||
devl_lock(devlink);
|
||||
if (nsim_dev->dont_allow_reload) {
|
||||
/* For testing purposes, user set debugfs dont_allow_reload
|
||||
* value to true. So forbid it.
|
||||
*/
|
||||
NL_SET_ERR_MSG_MOD(extack, "User forbid the reload for testing purposes");
|
||||
devl_unlock(devlink);
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
nsim_dev_reload_destroy(nsim_dev);
|
||||
devl_unlock(devlink);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -970,19 +967,16 @@ static int nsim_dev_reload_up(struct devlink *devlink, enum devlink_reload_actio
|
||||
struct nsim_dev *nsim_dev = devlink_priv(devlink);
|
||||
int ret;
|
||||
|
||||
devl_lock(devlink);
|
||||
if (nsim_dev->fail_reload) {
|
||||
/* For testing purposes, user set debugfs fail_reload
|
||||
* value to true. Fail right away.
|
||||
*/
|
||||
NL_SET_ERR_MSG_MOD(extack, "User setup the reload to fail for testing purposes");
|
||||
devl_unlock(devlink);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
*actions_performed = BIT(DEVLINK_RELOAD_ACTION_DRIVER_REINIT);
|
||||
ret = nsim_dev_reload_create(nsim_dev, extack);
|
||||
devl_unlock(devlink);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user