summaryrefslogtreecommitdiffstats
path: root/net/bridge/br_multicast.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-11-29 14:50:17 +0000
committerArnd Bergmann <arnd@arndb.de>2011-11-29 14:50:17 +0000
commit98014be39bda8277a5ad130bb274ed6eb18b74df (patch)
tree974620a47c9350ff9b3c06ffd2b49470bbda72ab /net/bridge/br_multicast.c
parent55135dfbf3dd83cb3e98deed8271b62d188404e1 (diff)
parent6e2a587eb99267367409097b70cb2d61b09e5269 (diff)
downloadblackbird-op-linux-98014be39bda8277a5ad130bb274ed6eb18b74df.tar.gz
blackbird-op-linux-98014be39bda8277a5ad130bb274ed6eb18b74df.zip
Merge branch 'defconfigs-for-arnd' of git://git.linaro.org/people/triad/linux-stericsson into fixes
Diffstat (limited to 'net/bridge/br_multicast.c')
-rw-r--r--net/bridge/br_multicast.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c
index 995cbe0ac0b2..a5f4e5769809 100644
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
@@ -1501,6 +1501,8 @@ static int br_multicast_ipv6_rcv(struct net_bridge *br,
__skb_pull(skb2, offset);
skb_reset_transport_header(skb2);
+ skb_postpull_rcsum(skb2, skb_network_header(skb2),
+ skb_network_header_len(skb2));
icmp6_type = icmp6_hdr(skb2)->icmp6_type;
@@ -1770,7 +1772,7 @@ int br_multicast_toggle(struct net_bridge *br, unsigned long val)
int err = 0;
struct net_bridge_mdb_htable *mdb;
- spin_lock(&br->multicast_lock);
+ spin_lock_bh(&br->multicast_lock);
if (br->multicast_disabled == !val)
goto unlock;
@@ -1806,7 +1808,7 @@ rollback:
}
unlock:
- spin_unlock(&br->multicast_lock);
+ spin_unlock_bh(&br->multicast_lock);
return err;
}
OpenPOWER on IntegriCloud