aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sky2.h
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@vyatta.com>2009-08-18 11:17:09 -0400
committerDavid S. Miller <davem@davemloft.net>2009-08-18 23:26:51 -0400
commit6b84dacadbdc3dab6a5b313d20d5a93b0d998641 (patch)
tree20bd2d8b320f5a33da98b217fe0506757563cb66 /drivers/net/sky2.h
parentee5f68fea27b53b16c265b1f9ed8aa3bc9024c96 (diff)
sky2: optimize transmit completion
Don't reference the list element in hardware transmit ring on transmit completion. The list element is updated by hardware, therefore it causes a cache miss. Do book keeping in software structure. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sky2.h')
-rw-r--r--drivers/net/sky2.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/sky2.h b/drivers/net/sky2.h
index 2c262f763f93..9d07a466aec1 100644
--- a/drivers/net/sky2.h
+++ b/drivers/net/sky2.h
@@ -1984,6 +1984,9 @@ struct sky2_status_le {
1984 1984
1985struct tx_ring_info { 1985struct tx_ring_info {
1986 struct sk_buff *skb; 1986 struct sk_buff *skb;
1987 unsigned long flags;
1988#define TX_MAP_SINGLE 0x0001
1989#define TX_MAP_PAGE 000002
1987 DECLARE_PCI_UNMAP_ADDR(mapaddr); 1990 DECLARE_PCI_UNMAP_ADDR(mapaddr);
1988 DECLARE_PCI_UNMAP_LEN(maplen); 1991 DECLARE_PCI_UNMAP_LEN(maplen);
1989}; 1992};