diff --git a/feeds/ipq807x/ipq807x/patches/107-bridge-allow-bcast-mcast-same-port-hairpinmode.patch b/feeds/ipq807x/ipq807x/patches/107-bridge-allow-bcast-mcast-same-port-hairpinmode.patch new file mode 100644 index 000000000..99989b306 --- /dev/null +++ b/feeds/ipq807x/ipq807x/patches/107-bridge-allow-bcast-mcast-same-port-hairpinmode.patch @@ -0,0 +1,14 @@ +Index: linux-4.4.60-qsdk-10fd7d14853b7020b804acae690c8acec5d954ce/net/bridge/br_forward.c +=================================================================== +--- linux-4.4.60-qsdk-10fd7d14853b7020b804acae690c8acec5d954ce.orig/net/bridge/br_forward.c ++++ linux-4.4.60-qsdk-10fd7d14853b7020b804acae690c8acec5d954ce/net/bridge/br_forward.c +@@ -33,8 +33,7 @@ static inline int should_deliver(const s + struct net_bridge_vlan_group *vg; + + vg = nbp_vlan_group_rcu(p); +- return ((skb->dev != p->dev) || ((p->flags & BR_HAIRPIN_MODE) && +- (!is_multicast_ether_addr(eth_hdr(skb)->h_dest)))) && ++ return ((skb->dev != p->dev) || (p->flags & BR_HAIRPIN_MODE)) && + br_allowed_egress(vg, skb) && p->state == BR_STATE_FORWARDING; + } +