aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-08-12 17:26:00 +0000
committerFelix Fietkau <nbd@openwrt.org>2013-08-12 17:26:00 +0000
commitf43b4ea962c7cccd74b04a60041f0a087cbe444d (patch)
tree57c64e24cc63574623c9c5b43f6bee003e202e12 /target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h
parente5fd991c6c18e90804dd81c1789373abfc273c1c (diff)
downloadupstream-f43b4ea962c7cccd74b04a60041f0a087cbe444d.tar.gz
upstream-f43b4ea962c7cccd74b04a60041f0a087cbe444d.tar.bz2
upstream-f43b4ea962c7cccd74b04a60041f0a087cbe444d.zip
ar71xx: ethernet: cache skb->len in the tx function to avoid accessing it again in completion
Improves ethernet performance, especially during bridging Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37761
Diffstat (limited to 'target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h')
-rw-r--r--target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h
index b9d95adaf6..6d51e722b0 100644
--- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h
+++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx.h
@@ -91,8 +91,11 @@ struct ag71xx_buf {
void *rx_buf;
};
struct ag71xx_desc *desc;
- dma_addr_t dma_addr;
- unsigned long timestamp;
+ union {
+ dma_addr_t dma_addr;
+ unsigned long timestamp;
+ };
+ unsigned int len;
};
struct ag71xx_ring {