From: Artem Chernyshev Date: Thu, 1 Dec 2022 14:00:30 +0000 (+0300) Subject: net: dsa: ksz: Check return value X-Git-Tag: v5.15.92~1543 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a4c342e645d6bc7d947d682fcfd4fc245ecf99e5;p=platform%2Fkernel%2Flinux-rpi.git net: dsa: ksz: Check return value [ Upstream commit 3d8fdcbf1f42e2bb9ae8b8c0b6f202278c788a22 ] Return NULL if we got unexpected value from skb_trim_rcsum() in ksz_common_rcv() Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: bafe9ba7d908 ("net: dsa: ksz: Factor out common tag code") Signed-off-by: Artem Chernyshev Reviewed-by: Vladimir Oltean Reviewed-by: Florian Fainelli Link: https://lore.kernel.org/r/20221201140032.26746-1-artem.chernyshev@red-soft.ru Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- diff --git a/net/dsa/tag_ksz.c b/net/dsa/tag_ksz.c index fa1d60d..6795dd0 100644 --- a/net/dsa/tag_ksz.c +++ b/net/dsa/tag_ksz.c @@ -22,7 +22,8 @@ static struct sk_buff *ksz_common_rcv(struct sk_buff *skb, if (!skb->dev) return NULL; - pskb_trim_rcsum(skb, skb->len - len); + if (pskb_trim_rcsum(skb, skb->len - len)) + return NULL; dsa_default_offload_fwd_mark(skb);