team: rtnl_lock for options set

During options set, there will be needed to hold rtnl_mutex in order to
safely call netdev notifiers.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jiri Pirko 2015-12-03 12:12:17 +01:00 committed by David S. Miller
parent fb1b2e3ce5
commit 7d25950529
1 changed files with 8 additions and 3 deletions

View File

@ -2422,9 +2422,13 @@ static int team_nl_cmd_options_set(struct sk_buff *skb, struct genl_info *info)
struct nlattr *nl_option;
LIST_HEAD(opt_inst_list);
rtnl_lock();
team = team_nl_team_get(info);
if (!team)
return -EINVAL;
if (!team) {
err = -EINVAL;
goto rtnl_unlock;
}
err = -EINVAL;
if (!info->attrs[TEAM_ATTR_LIST_OPTION]) {
@ -2551,7 +2555,8 @@ static int team_nl_cmd_options_set(struct sk_buff *skb, struct genl_info *info)
team_put:
team_nl_team_put(team);
rtnl_unlock:
rtnl_unlock();
return err;
}