Re: [net-next PATCH 3/3] net: hsr: add tx stats for master interface

From: David Miller
Date: Fri Apr 12 2019 - 20:14:52 EST


From: Murali Karicheri <m-karicheri2@xxxxxx>
Date: Fri, 12 Apr 2019 16:13:25 -0400

> Add tx stats to hsr interface. Without this
> ifconfig for hsr interface doesn't show tx packet stats.
>
> Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
> ---
> net/hsr/hsr_device.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/net/hsr/hsr_device.c b/net/hsr/hsr_device.c
> index 15c72065df79..f22902eac083 100644
> --- a/net/hsr/hsr_device.c
> +++ b/net/hsr/hsr_device.c
> @@ -229,6 +229,8 @@ static int hsr_dev_xmit(struct sk_buff *skb, struct net_device *dev)
> master = hsr_port_get_hsr(hsr, HSR_PT_MASTER);
> skb->dev = master->dev;
> hsr_forward_skb(skb, master);
> + master->dev->stats.tx_packets++;
> + master->dev->stats.tx_bytes += skb->len;
>

This introduced a use after free of 'skb' as hsr_forward_skb() can free it.

Also, why are there so many changes in your "internal" tree and why are
they not all upstream already?