]> git.baikalelectronics.ru Git - kernel.git/commit
net: speedup skb_splice_bits()
authorEric Dumazet <edumazet@google.com>
Sun, 22 Apr 2012 12:26:16 +0000 (12:26 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 24 Apr 2012 03:01:35 +0000 (23:01 -0400)
commit82f03c59daf39678a9823c09218bdf3891fb0f2c
tree522ac16cf3c1db59ef21e30cf14177dea1a7ea24
parent34e78bc44d8b616c5289b0d3f5f8ca6778d8530d
net: speedup skb_splice_bits()

Commit 887fb317f (pipe: add support for shrinking and growing pipes)
added a slowdown for splice(socket -> pipe), as we might grow the spd
used in skb_splice_bits() for each skb we process in splice() syscall.

Its not needed since skb lengths are capped. The default on-stack arrays
are more than enough.

Use MAX_SKB_FRAGS instead of PIPE_DEF_BUFFERS to describe the reasonable
limit per skb.

Add coalescing support to help splicing of GRO skbs built from linear
skbs (linked into frag_list)

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/skbuff.c