summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2020-04-06 17:54:12 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-04-13 10:32:53 +0200
commit02c0b89493e7e53282df11f669606571b5919376 (patch)
treeb4dacb150154f630a260a86a2d2283651d7225eb /net
parent1b62259d8e9021f2b701f5259a8fcec07fbcd237 (diff)
net: dsa: tag_brcm: Fix skb->fwd_offload_mark location
When the backport of upstream commit 0e62f543bed03a64495bd2651d4fe1aa4bcb7fe5 ("net: dsa: Fix duplicate frames flooded by learning") was done the assignment of skb->fwd_offload_mark would land in brcm_tag_xmit() which is incorrect, it should have been in brcm_tag_rcv(). Fixes: 5e845dc62f38 ("net: dsa: Fix duplicate frames flooded by learning") Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net')
-rw-r--r--net/dsa/tag_brcm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/dsa/tag_brcm.c b/net/dsa/tag_brcm.c
index 76d55a80f3b9..98074338cd83 100644
--- a/net/dsa/tag_brcm.c
+++ b/net/dsa/tag_brcm.c
@@ -84,8 +84,6 @@ static struct sk_buff *brcm_tag_xmit(struct sk_buff *skb, struct net_device *dev
brcm_tag[2] = BRCM_IG_DSTMAP2_MASK;
brcm_tag[3] = (1 << p->port) & BRCM_IG_DSTMAP1_MASK;
- skb->offload_fwd_mark = 1;
-
return skb;
out_free:
@@ -148,6 +146,8 @@ static int brcm_tag_rcv(struct sk_buff *skb, struct net_device *dev,
skb->dev->stats.rx_packets++;
skb->dev->stats.rx_bytes += skb->len;
+ skb->offload_fwd_mark = 1;
+
netif_receive_skb(skb);
return 0;