diff options
| author | Eric Dumazet <[email protected]> | 2012-04-27 00:38:33 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2012-04-30 21:35:49 -0400 |
| commit | 329033f645d93b5f9160b9b972dbc5431ad22a33 (patch) | |
| tree | 1fca09d6bf496391b8ea5d109429e48b28b2d7a8 /include/linux/debugobjects.h | |
| parent | d7e8883cfcf4851afe74fb380cc62b7fa9cf66ba (diff) | |
tcp: makes tcp_try_coalesce aware of skb->head_frag
TCP coalesce can check if skb to be merged has its skb->head mapped to a
page fragment, instead of a kmalloc() area.
We had to disable coalescing in this case, for performance reasons.
We 'upgrade' skb->head as a fragment in itself.
This reduces number of cache misses when user makes its copies, since a
less sk_buff are fetched.
This makes receive and ofo queues shorter and thus reduce cache line
misses in TCP stack.
This is a followup of patch "net: allow skb->head to be a page fragment"
Tested with tg3 nic, with GRO on or off. We can see "TCPRcvCoalesce"
counter being incremented.
Signed-off-by: Eric Dumazet <[email protected]>
Cc: Ilpo Järvinen <[email protected]>
Cc: Herbert Xu <[email protected]>
Cc: Maciej Żenczykowski <[email protected]>
Cc: Neal Cardwell <[email protected]>
Cc: Tom Herbert <[email protected]>
Cc: Jeff Kirsher <[email protected]>
Cc: Ben Hutchings <[email protected]>
Cc: Matt Carlson <[email protected]>
Cc: Michael Chan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions