From: Scott Feldman <sfel...@gmail.com>

Basic house keeping: If there is an error adding the router MAC for this
vlan, removing the just installed VLAN table entry to leave device in same
state as before failure.

Signed-off-by: Scott Feldman <sfel...@gmail.com>
---
 drivers/net/ethernet/rocker/rocker.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/rocker/rocker.c 
b/drivers/net/ethernet/rocker/rocker.c
index ab6d871..76e2281 100644
--- a/drivers/net/ethernet/rocker/rocker.c
+++ b/drivers/net/ethernet/rocker/rocker.c
@@ -4342,7 +4342,12 @@ static int rocker_port_vlan_add(struct rocker_port 
*rocker_port,
        if (err)
                return err;
 
-       return rocker_port_router_mac(rocker_port, trans, 0, htons(vid));
+       err = rocker_port_router_mac(rocker_port, trans, 0, htons(vid));
+       if (err)
+               rocker_port_vlan(rocker_port, trans,
+                                ROCKER_OP_FLAG_REMOVE, vid);
+
+       return err;
 }
 
 static int rocker_port_vlans_add(struct rocker_port *rocker_port,
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to