summaryrefslogtreecommitdiff
path: root/net/ipv4/tcp_ipv4.c
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2012-05-17 18:40:54 +0100
committerBen Hutchings <bhutchings@solarflare.com>2012-08-24 20:10:11 +0100
commitf7251a9ce936f1006fbfdef63dbe42ae5e0fee7c (patch)
treee0187036af8587b61f4f492a31f3429b33dc0ffb /net/ipv4/tcp_ipv4.c
parent14bf718fb97efe9ff649c317e7d87a3617b13e7c (diff)
sfc: Simplify TSO header buffer allocation
TSO header buffers contain a control structure immediately followed by the packet headers, and are kept on a free list when not in use. This complicates buffer management and tends to result in cache read misses when we recycle such buffers (particularly if DMA-coherent memory requires caches to be disabled). Replace the free list with a simple mapping by descriptor index. We know that there is always a payload descriptor between any two descriptors with TSO header buffers, so we can allocate only one such buffer for each two descriptors. While we're at it, use a standard error code for allocation failure, not -1. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
0 files changed, 0 insertions, 0 deletions