diff options
author | stephen hemminger <shemminger@vyatta.com> | 2010-04-27 17:01:07 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-28 03:13:55 +0200 |
commit | afe0159d935ab731c682e811356914bb2be9470c (patch) | |
tree | db34bd3e0fc3289f1a92a7096e6efba2dbe81122 /net/bridge | |
parent | bridge: multicast port group RCU fix (diff) | |
download | linux-afe0159d935ab731c682e811356914bb2be9470c.tar.xz linux-afe0159d935ab731c682e811356914bb2be9470c.zip |
bridge: multicast_flood cleanup
Move some declarations around to make it clearer which variables
are being used inside loop.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bridge')
-rw-r--r-- | net/bridge/br_forward.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/net/bridge/br_forward.c b/net/bridge/br_forward.c index 5f9988a3f06a..396f077216a3 100644 --- a/net/bridge/br_forward.c +++ b/net/bridge/br_forward.c @@ -208,17 +208,15 @@ static void br_multicast_flood(struct net_bridge_mdb_entry *mdst, { struct net_device *dev = BR_INPUT_SKB_CB(skb)->brdev; struct net_bridge *br = netdev_priv(dev); - struct net_bridge_port *port; - struct net_bridge_port *lport, *rport; - struct net_bridge_port *prev; + struct net_bridge_port *prev = NULL; struct net_bridge_port_group *p; struct hlist_node *rp; - prev = NULL; - rp = rcu_dereference(br->router_list.first); p = mdst ? rcu_dereference(mdst->ports) : NULL; while (p || rp) { + struct net_bridge_port *port, *lport, *rport; + lport = p ? p->port : NULL; rport = rp ? hlist_entry(rp, struct net_bridge_port, rlist) : NULL; |