aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch')
-rw-r--r--target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch5
1 files changed, 3 insertions, 2 deletions
diff --git a/target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch b/target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch
index a6e974c5ad..bab091262c 100644
--- a/target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch
+++ b/target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch
@@ -382,6 +382,8 @@ Implement optinal multicast->unicast conversion for igmp snooping
- port = (unsigned long)lport > (unsigned long)rport ?
- lport : rport;
+-
+- prev = maybe_deliver(prev, port, skb, __packet_hook);
+ if ((unsigned long)lport > (unsigned long)rport) {
+ port = lport;
+ addr = p->unicast ? p->eth_addr : NULL;
@@ -389,8 +391,7 @@ Implement optinal multicast->unicast conversion for igmp snooping
+ port = rport;
+ addr = NULL;
+ }
-
-- prev = maybe_deliver(prev, port, skb, __packet_hook);
++
+ if (addr)
+ prev = maybe_deliver_addr(prev, port, skb, addr,
+ __packet_hook);