[lvc-project] [PATCH] net: dsa: ksz: Check proper trim in ksz_common_rcv()

Vladimir Oltean olteanv at gmail.com
Tue Nov 29 19:55:31 MSK 2022


Hi Artyom,

On Tue, Nov 29, 2022 at 05:08:09PM +0300, Artem Chernyshev wrote:
> Return NULL if we got unexpected value from skb_trim_rcsum()
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Fixes: bafe9ba7d908 ("net: dsa: ksz: Factor out common tag code")
> Signed-off-by: Artem Chernyshev <artem.chernyshev at red-soft.ru>
> ---

Reviewed-by: Vladimir Oltean <olteanv at gmail.com>

It looks like the same pattern exists in tag_hellcreek.c and in
tag_sja1105.c. Do you intend to patch those as well?

>  net/dsa/tag_ksz.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/net/dsa/tag_ksz.c b/net/dsa/tag_ksz.c
> index 38fa19c1e2d5..429250298ac4 100644
> --- a/net/dsa/tag_ksz.c
> +++ b/net/dsa/tag_ksz.c
> @@ -21,7 +21,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);
>  
> -- 
> 2.30.3
> 



More information about the lvc-project mailing list