Re: [PATCH net-next V2 3/3] tun: rx batching

From: David Miller
Date: Thu Dec 29 2016 - 11:35:11 EST


From: Jason Wang <jasowang@xxxxxxxxxx>
Date: Wed, 28 Dec 2016 16:09:31 +0800

> + spin_lock(&queue->lock);
> + qlen = skb_queue_len(queue);
> + if (qlen > rx_batched)
> + goto drop;
> + __skb_queue_tail(queue, skb);
> + if (!more || qlen + 1 > rx_batched) {
> + __skb_queue_head_init(&process_queue);
> + skb_queue_splice_tail_init(queue, &process_queue);
> + rcv = true;
> + }
> + spin_unlock(&queue->lock);

Since you always clear the 'queue' when you insert the skb that hits
the limit, I don't see how the "goto drop" path can be possibly taken.