Re: [RFC PATCH net] net/core: don't increment rx_dropped on inactive slaves

From: David Miller
Date: Mon Jan 25 2016 - 01:42:36 EST


From: Jarod Wilson <jarod@xxxxxxxxxx>
Date: Fri, 22 Jan 2016 14:11:22 -0500

> diff --git a/net/core/dev.c b/net/core/dev.c
> index 8cba3d8..1354c7b 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -4153,8 +4153,11 @@ ncls:
> else
> ret = pt_prev->func(skb, skb->dev, pt_prev, orig_dev);
> } else {
> + if (deliver_exact)
> + goto inactive; /* bond or team inactive slave */
> drop:
> atomic_long_inc(&skb->dev->rx_dropped);
> +inactive:
> kfree_skb(skb);
> /* Jamal, now you will not able to escape explaining
> * me how you were going to use this. :-)
> --
> 1.8.3.1
>

I agree that rx_dropped is not the correct stat to bump here, but
I'm totally against the event disappearing completely into thin
air.

You have to replace the rx_dropped bump with _something_.

The only reason this hasn't been "fixed" yet is that everyone is
too damn lazy to implement that "something".