diff options
author | Jiri Pirko <jpirko@redhat.com> | 2012-06-19 05:54:11 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-06-19 22:00:23 (GMT) |
commit | 0f1aad2b7f01d88782fbf4ab08b13a7d92b9b6b2 (patch) | |
tree | f37dde889cebd9168e0c8a0784d128a006367dd0 /drivers/net/team/team.c | |
parent | 85d59a87248de90e3266e10dce99477b60f524c0 (diff) | |
download | linux-0f1aad2b7f01d88782fbf4ab08b13a7d92b9b6b2.tar.xz |
team: allow async option changes
This patch adds two exported functions. One allows to mark option
instance as changed and the second processes change check and does
transfer of changed options to userspace.
Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/team/team.c')
-rw-r--r-- | drivers/net/team/team.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index cff8e25..7988ba0 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c @@ -82,6 +82,7 @@ static void team_refresh_port_linkup(struct team_port *port) port->state.linkup; } + /******************* * Options handling *******************/ @@ -387,6 +388,22 @@ static int team_option_set(struct team *team, return err; } +void team_option_inst_set_change(struct team_option_inst_info *opt_inst_info) +{ + struct team_option_inst *opt_inst; + + opt_inst = container_of(opt_inst_info, struct team_option_inst, info); + opt_inst->changed = true; +} +EXPORT_SYMBOL(team_option_inst_set_change); + +void team_options_change_check(struct team *team) +{ + __team_options_change_check(team); +} +EXPORT_SYMBOL(team_options_change_check); + + /**************** * Mode handling ****************/ @@ -2051,6 +2068,7 @@ static void team_port_change_check(struct team_port *port, bool linkup) mutex_unlock(&team->lock); } + /************************************ * Net device notifier event handler ************************************/ |