diff -NurpP --minimal linux-2.6.38-rc7-vs2.3.0.37-rc5/net/bridge/br_multicast.c linux-2.6.38-rc7-vs2.3.0.37-rc5.1/net/bridge/br_multicast.c --- linux-2.6.38-rc7-vs2.3.0.37-rc5/net/bridge/br_multicast.c 2011-03-07 16:53:28.000000000 +0100 +++ linux-2.6.38-rc7-vs2.3.0.37-rc5.1/net/bridge/br_multicast.c 2011-03-10 16:51:08.000000000 +0100 @@ -446,7 +446,7 @@ static struct sk_buff *br_ip6_multicast_ ip6h->nexthdr = IPPROTO_HOPOPTS; ip6h->hop_limit = 1; ipv6_dev_get_saddr(dev_net(br->dev), br->dev, &ip6h->daddr, 0, - &ip6h->saddr); + &ip6h->saddr, NULL); ipv6_addr_set(&ip6h->daddr, htonl(0xff020000), 0, 0, htonl(1)); ipv6_eth_mc_map(&ip6h->daddr, eth->h_dest); diff -NurpP --minimal linux-2.6.38-rc7-vs2.3.0.37-rc5/net/ipv6/ndisc.c linux-2.6.38-rc7-vs2.3.0.37-rc5.1/net/ipv6/ndisc.c --- linux-2.6.38-rc7-vs2.3.0.37-rc5/net/ipv6/ndisc.c 2011-01-29 02:01:07.000000000 +0100 +++ linux-2.6.38-rc7-vs2.3.0.37-rc5.1/net/ipv6/ndisc.c 2011-03-10 16:52:54.000000000 +0100 @@ -595,7 +595,7 @@ static void ndisc_send_na(struct net_dev } else { if (ipv6_dev_get_saddr(dev_net(dev), dev, daddr, inet6_sk(dev_net(dev)->ipv6.ndisc_sk)->srcprefs, - &tmpaddr, NULL /* FIXME: ? */ )) + &tmpaddr, NULL)) return; src_addr = &tmpaddr; }