[PATCH stable-4.9.y]] net: dsa: tag_brcm: Fix skb->fwd_offload_mark location

From: Florian Fainelli
Date: Mon Apr 06 2020 - 20:54:22 EST


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@xxxxxxxxx>
---
net/dsa/tag_brcm.c | 4 ++--
1 file 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;
--
2.7.4