]> git.baikalelectronics.ru Git - kernel.git/commit
ipv4: Add GRO infrastructure
authorHerbert Xu <herbert@gondor.apana.org.au>
Tue, 16 Dec 2008 07:41:09 +0000 (23:41 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 16 Dec 2008 07:41:09 +0000 (23:41 -0800)
commit81d27200752e90a20351f3b41674fc5971c6a229
tree4ebe390a9b328bba32d149b9f83e998836806f5d
parent8c6990b18e37f213c7089ff892b29cab6fe5c6a8
ipv4: Add GRO infrastructure

This patch adds GRO support for IPv4.

The criteria for merging is more stringent than LRO, in particular,
we require all fields in the IP header to be identical except for
the length, ID and checksum.  In addition, the ID must form an
arithmetic sequence with a difference of one.

The ID requirement might seem overly strict, however, most hardware
TSO solutions already obey this rule.  Linux itself also obeys this
whether GSO is in use or not.

In future we could relax this rule by storing the IDs (or rather
making sure that we don't drop them when pulling the aggregate
skb's tail).

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/protocol.h
net/ipv4/af_inet.c