diff options
author | Flavio Leitner <fbl@redhat.com> | 2012-12-29 15:31:01 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-12-30 02:31:58 -0800 |
commit | 4cafe373d40dd9893a301fa83dc99abb80a2bd0b (patch) | |
tree | afb1e82d88c73343bba3c02b8334a0cf4b7fda66 /drivers/net/team | |
parent | 576eb62598f10c8c7fd75703fe89010cdcfff596 (diff) |
team: implement carrier change
The user space teamd daemon may need to control the
master's carrier state depending on the selected mode.
Signed-off-by: Flavio Leitner <fbl@redhat.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/team')
-rw-r--r-- | drivers/net/team/team.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index ad86660fb8f9..27a6edeb376f 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c @@ -1707,6 +1707,15 @@ static netdev_features_t team_fix_features(struct net_device *dev, return features; } +static int team_change_carrier(struct net_device *dev, bool new_carrier) +{ + if (new_carrier) + netif_carrier_on(dev); + else + netif_carrier_off(dev); + return 0; +} + static const struct net_device_ops team_netdev_ops = { .ndo_init = team_init, .ndo_uninit = team_uninit, @@ -1729,6 +1738,7 @@ static const struct net_device_ops team_netdev_ops = { .ndo_add_slave = team_add_slave, .ndo_del_slave = team_del_slave, .ndo_fix_features = team_fix_features, + .ndo_change_carrier = team_change_carrier, }; |