net: dsa: return after mdb prepare phase
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Wed, 8 Nov 2017 15:49:56 +0000 (10:49 -0500)
committerDavid S. Miller <davem@davemloft.net>
Sat, 11 Nov 2017 06:45:09 +0000 (15:45 +0900)
The current code does not return after successfully preparing the MDB
addition on every ports member of a multicast group. Fix this.

Fixes: a1a6b7ea7f2d ("net: dsa: add cross-chip multicast support")
Reported-by: Egil Hjelmeland <privat@egil-hjelmeland.no>
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/switch.c

index e6c06aa349a6fd1930a6c343d4d643cccfa8cb92..73746fa148f11466d03ca81efb8c4e890e836726 100644 (file)
@@ -133,6 +133,8 @@ static int dsa_switch_mdb_add(struct dsa_switch *ds,
                        if (err)
                                return err;
                }
+
+               return 0;
        }
 
        for_each_set_bit(port, group, ds->num_ports)