summary refs log tree commit diff
path: root/drivers
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2007-09-15 13:53:19 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2007-10-10 16:51:00 -0700
commit829185e97fba67ededd3eb025147bafcc0ca7557 (patch)
tree88160c1d7b0afeaade6c79904501a629aa9d3a6c /drivers
parent6fba848a9a4bbe03f61b22bf0e4063d7ed4c561a (diff)
downloadlinux-829185e97fba67ededd3eb025147bafcc0ca7557.tar.gz
pasemi_mac: Clean TX ring in poll
Unfortunately there's no timeout for how long a packet can sit on
the TX ring after completion before an interrupt is generated, and
we want to have a threshold that's larger than one packet per interrupt.

So we have to have a timer that occasionally cleans the TX ring even
though there hasn't been an interrupt. Instead of setting up a dedicated
timer for this, just clean it in the NAPI poll routine instead.

[ Resolved conflicts with napi_struct changes... -DaveM ]

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/pasemi_mac.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/pasemi_mac.c b/drivers/net/pasemi_mac.c
index 916a76e28a87..48c117038fef 100644
--- a/drivers/net/pasemi_mac.c
+++ b/drivers/net/pasemi_mac.c
@@ -1078,6 +1078,7 @@ static int pasemi_mac_poll(struct napi_struct *napi, int budget)
 	struct net_device *dev = mac->netdev;
 	int pkts;
 
+	pasemi_mac_clean_tx(mac);
 	pkts = pasemi_mac_clean_rx(mac, budget);
 	if (pkts < budget) {
 		/* all done, no more packets present */