9fa88d2d3f94d4c082c8a5523ab9b1a58d9cb785
[openwrt/staging/pepe2k.git] /
1 From efdddc4484859082da6c7877ed144c8121c8ea55 Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= <noltari@gmail.com>
3 Date: Thu, 29 May 2025 14:44:06 +0200
4 Subject: [PATCH] net: dsa: tag_brcm: legacy: fix pskb_may_pull length
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 BRCM_LEG_PORT_ID was incorrectly used for pskb_may_pull length.
10 The correct check is BRCM_LEG_TAG_LEN + VLAN_HLEN, or 10 bytes.
11
12 Fixes: 964dbf186eaa ("net: dsa: tag_brcm: add support for legacy tags")
13 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
14 Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
15 Link: https://patch.msgid.link/20250529124406.2513779-1-noltari@gmail.com
16 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
17 ---
18 net/dsa/tag_brcm.c | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21 --- a/net/dsa/tag_brcm.c
22 +++ b/net/dsa/tag_brcm.c
23 @@ -257,7 +257,7 @@ static struct sk_buff *brcm_leg_tag_rcv(
24 int source_port;
25 u8 *brcm_tag;
26
27 - if (unlikely(!pskb_may_pull(skb, BRCM_LEG_PORT_ID)))
28 + if (unlikely(!pskb_may_pull(skb, BRCM_LEG_TAG_LEN + VLAN_HLEN)))
29 return NULL;
30
31 brcm_tag = dsa_etype_header_pos_rx(skb);