mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
bridge: Reorder neighbor suppression check when flooding
The bridge does not flood ARP / NS packets for which a reply was sent to bridge ports that have neighbor suppression enabled. Subsequent patches are going to add per-{Port, VLAN} neighbor suppression, which is going to make it more expensive to check whether neighbor suppression is enabled since a VLAN lookup will be required. Therefore, instead of unnecessarily performing this lookup for every packet, only perform it for ARP / NS packets for which a reply was sent. Signed-off-by: Ido Schimmel <idosch@nvidia.com> Acked-by: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
1cf3fe1c37
commit
013a7ce81d
@@ -224,8 +224,8 @@ void br_flood(struct net_bridge *br, struct sk_buff *skb,
|
||||
/* Do not flood to ports that enable proxy ARP */
|
||||
if (p->flags & BR_PROXYARP)
|
||||
continue;
|
||||
if ((p->flags & (BR_PROXYARP_WIFI | BR_NEIGH_SUPPRESS)) &&
|
||||
BR_INPUT_SKB_CB(skb)->proxyarp_replied)
|
||||
if (BR_INPUT_SKB_CB(skb)->proxyarp_replied &&
|
||||
(p->flags & (BR_PROXYARP_WIFI | BR_NEIGH_SUPPRESS)))
|
||||
continue;
|
||||
|
||||
prev = maybe_deliver(prev, p, skb, local_orig);
|
||||
|
Reference in New Issue
Block a user