net/mlx4_en: Avoid a cache line miss in TX completion for single frag skb's
authorEric Dumazet <edumazet@google.com>
Sun, 5 Oct 2014 09:35:13 +0000 (12:35 +0300)
committerDavid S. Miller <davem@davemloft.net>
Mon, 6 Oct 2014 05:04:15 +0000 (01:04 -0400)
commit3d03641cb4ea050f969dd3ab34113adb95287f36
treeb1cbd2ba62c956e93d88ccde59437d46b21e13da
parentdc9b06d156cefb95f7f6a3ac0521a3efa31d6805
net/mlx4_en: Avoid a cache line miss in TX completion for single frag skb's

Add frag0_dma/frag0_byte_count into mlx4_en_tx_info to avoid a cache
line miss in TX completion for frames having one dma element.  (We avoid
reading back the tx descriptor)

Note this could be extended to 2/3 dma elements later, as we have free
room in mlx4_en_tx_info

Also, mlx4_en_free_tx_desc() no longer accesses skb_shinfo(). We use a
new nr_maps fields in mlx4_en_tx_info to avoid 2 or 3 cache misses.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Amir Vadai <amirv@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx4/en_tx.c
drivers/net/ethernet/mellanox/mlx4/mlx4_en.h