diff options
author | Vivien Didelot <vivien.didelot@savoirfairelinux.com> | 2016-03-13 16:21:33 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-03-14 16:05:31 -0400 |
commit | 16bfa7024eba5e36aff38ba62086b9027373007d (patch) | |
tree | fd05f05fe264eada7ea446a554c0fa0933019abd /net/dsa/slave.c | |
parent | 71327a4e7d997276d49db92fd3d30008389ee6d5 (diff) |
net: dsa: make port_bridge_leave return void
netdev_upper_dev_unlink() which notifies NETDEV_CHANGEUPPER, returns
void, as well as del_nbp(). So there's no advantage to catch an eventual
error from the port_bridge_leave routine at the DSA level.
Make this routine void for the DSA layer and its existing drivers.
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/slave.c')
-rw-r--r-- | net/dsa/slave.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/net/dsa/slave.c b/net/dsa/slave.c index 52653d715f64..8e00f1d83eb8 100644 --- a/net/dsa/slave.c +++ b/net/dsa/slave.c | |||
@@ -454,15 +454,14 @@ static int dsa_slave_bridge_port_join(struct net_device *dev, | |||
454 | return ret; | 454 | return ret; |
455 | } | 455 | } |
456 | 456 | ||
457 | static int dsa_slave_bridge_port_leave(struct net_device *dev) | 457 | static void dsa_slave_bridge_port_leave(struct net_device *dev) |
458 | { | 458 | { |
459 | struct dsa_slave_priv *p = netdev_priv(dev); | 459 | struct dsa_slave_priv *p = netdev_priv(dev); |
460 | struct dsa_switch *ds = p->parent; | 460 | struct dsa_switch *ds = p->parent; |
461 | int ret = -EOPNOTSUPP; | ||
462 | 461 | ||
463 | 462 | ||
464 | if (ds->drv->port_bridge_leave) | 463 | if (ds->drv->port_bridge_leave) |
465 | ret = ds->drv->port_bridge_leave(ds, p->port); | 464 | ds->drv->port_bridge_leave(ds, p->port); |
466 | 465 | ||
467 | p->bridge_dev = NULL; | 466 | p->bridge_dev = NULL; |
468 | 467 | ||
@@ -470,8 +469,6 @@ static int dsa_slave_bridge_port_leave(struct net_device *dev) | |||
470 | * so allow it to be in BR_STATE_FORWARDING to be kept functional | 469 | * so allow it to be in BR_STATE_FORWARDING to be kept functional |
471 | */ | 470 | */ |
472 | dsa_slave_stp_update(dev, BR_STATE_FORWARDING); | 471 | dsa_slave_stp_update(dev, BR_STATE_FORWARDING); |
473 | |||
474 | return ret; | ||
475 | } | 472 | } |
476 | 473 | ||
477 | static int dsa_slave_port_attr_get(struct net_device *dev, | 474 | static int dsa_slave_port_attr_get(struct net_device *dev, |
@@ -1156,7 +1153,7 @@ static int dsa_slave_master_changed(struct net_device *dev) | |||
1156 | !strcmp(master->rtnl_link_ops->kind, "bridge")) | 1153 | !strcmp(master->rtnl_link_ops->kind, "bridge")) |
1157 | err = dsa_slave_bridge_port_join(dev, master); | 1154 | err = dsa_slave_bridge_port_join(dev, master); |
1158 | else if (dsa_port_is_bridged(p)) | 1155 | else if (dsa_port_is_bridged(p)) |
1159 | err = dsa_slave_bridge_port_leave(dev); | 1156 | dsa_slave_bridge_port_leave(dev); |
1160 | 1157 | ||
1161 | return err; | 1158 | return err; |
1162 | } | 1159 | } |