Martin KaFai Lau 88340160f3 ip_tunnel: Create percpu gro_cell
In the ipip tunnel, the skb->queue_mapping is lost in ipip_rcv().
All skb will be queued to the same cell->napi_skbs.  The
gro_cell_poll is pinned to one core under load.  In production traffic,
we also see severe rx_dropped in the tunl iface and it is probably due to
this limit: skb_queue_len(&cell->napi_skbs) > netdev_max_backlog.

This patch is trying to alloc_percpu(struct gro_cell) and schedule
gro_cell_poll to process the skb in the same core.

Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-18 01:56:32 -05:00
..
2014-11-13 11:25:03 +01:00
2015-01-17 23:51:10 -05:00
2014-09-18 10:54:36 +02:00
2013-12-28 17:02:46 -05:00
2013-11-07 19:28:58 -05:00
2014-09-30 01:02:26 -04:00
2015-01-04 22:21:33 -05:00
2014-06-04 22:46:38 -07:00
2015-01-18 01:56:32 -05:00
2015-01-05 22:44:46 -05:00
2014-01-03 20:56:48 -05:00
2014-12-19 00:19:23 +01:00
2015-01-15 18:26:16 -05:00
2014-06-02 11:00:41 -07:00
2014-05-22 14:57:15 -04:00
2014-10-01 21:35:51 -04:00
2014-12-09 16:29:03 -05:00