linux-stable/drivers/net/e1000e
Eric Dumazet 042a53a9e4 net: skb_shared_info optimization
skb_dma_unmap() is quite expensive for small packets,
because we use two different cache lines from skb_shared_info.

One to access nr_frags, one to access dma_maps[0]

Instead of dma_maps being an array of MAX_SKB_FRAGS + 1 elements,
let dma_head alone in a new dma_head field, close to nr_frags,
to reduce cache lines misses.

Tested on my dev machine (bnx2 & tg3 adapters), nice speedup !

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-06-08 00:21:48 -07:00
..
82571.c e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
defines.h e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
e1000.h e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
es2lan.c e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
ethtool.c e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
hw.h e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
ich8lan.c e1000e: workaround a Tx hang on 82577/82578 2009-06-03 02:46:36 -07:00
lib.c e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00
Makefile e1000e: reformat comment blocks, cosmetic changes only 2008-03-28 22:14:56 -04:00
netdev.c net: skb_shared_info optimization 2009-06-08 00:21:48 -07:00
param.c e1000e: enable CRC stripping by default 2009-06-03 02:46:31 -07:00
phy.c e1000e: add support for 82577/82578 GbE LOM parts 2009-06-03 02:46:34 -07:00