Merge branch 'NAPI-gro-hash'
authorDavid S. Miller <davem@davemloft.net>
Tue, 26 Jun 2018 02:33:04 +0000 (11:33 +0900)
committerDavid S. Miller <davem@davemloft.net>
Tue, 26 Jun 2018 02:33:04 +0000 (11:33 +0900)
commit7e55052783fd3a9202e9f7c4c480629a7270645f
tree641f6811f085e35b7f876685e0dbc506defce983
parent9ff3b40e411c00870d1c29cd6b843fca7c4160ae
parent07d78363dcffd9cb1bf6f06a6cac0e0847f3c1de
Merge branch 'NAPI-gro-hash'

Convert GRO receive over to hash table.

When many parallel flows are present and being received on the same
RX queue, GRO processing can become expensive because each incoming
frame must traverse the per-NAPI GRO list at each protocol layer
of GRO receive (eth --> ipv{4,6} --> tcp).

Use the already computed hash to chain these SKBs in a hash table
instead of a simple list.

The first patch makes the GRO list a true list_head.

The second patch implements the hash table.

This series patches basic testing and I added some diagnostics
to make sure we really were aggregating GRO frames :-)

Signed-off-by: David S. Miller <davem@davemloft.net>