diff options
author | Michael Chan <mchan@broadcom.com> | 2010-05-06 04:58:13 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-07 01:17:24 -0400 |
commit | a33fa66bcf365ffe5b79d1ae1d3582cc261ae56e (patch) | |
tree | cf714757a5c3644bd8154a4da0cea4eb53a80032 /drivers/net/bnx2.h | |
parent | c67938a9e071fa51c91ed17a14382e128368d115 (diff) |
bnx2: Add prefetches to rx path.
Add prefetches of the skb and the next rx descriptor to speed up rx path.
Use prefetchw() for the skb [suggested by Eric Dumazet].
The rx descriptor is in skb->data which is mapped for streaming mode DMA.
Eric Dumazet pointed out that we should not prefetch the data before
dma_sync. So we prefetch only if dma_sync is no_op on the system.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2.h')
-rw-r--r-- | drivers/net/bnx2.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h index ab34a5d86f86..dd35bd0b7e05 100644 --- a/drivers/net/bnx2.h +++ b/drivers/net/bnx2.h | |||
@@ -6551,6 +6551,7 @@ struct l2_fhdr { | |||
6551 | 6551 | ||
6552 | struct sw_bd { | 6552 | struct sw_bd { |
6553 | struct sk_buff *skb; | 6553 | struct sk_buff *skb; |
6554 | struct l2_fhdr *desc; | ||
6554 | DEFINE_DMA_UNMAP_ADDR(mapping); | 6555 | DEFINE_DMA_UNMAP_ADDR(mapping); |
6555 | }; | 6556 | }; |
6556 | 6557 | ||