diff options
author | Olof Johansson <olof@lixom.net> | 2007-11-28 20:56:54 -0600 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 15:04:23 -0800 |
commit | 61cec3bddc79373a246e2f8eb13e5acdc106f46a (patch) | |
tree | 4c2780bc195ed6acce57073101b98813595206c8 /drivers/net/pasemi_mac.h | |
parent | 5c15332bed4c59fff6423f08ef6bd6894af38a99 (diff) | |
download | linux-61cec3bddc79373a246e2f8eb13e5acdc106f46a.tar.gz linux-61cec3bddc79373a246e2f8eb13e5acdc106f46a.tar.bz2 linux-61cec3bddc79373a246e2f8eb13e5acdc106f46a.zip |
pasemi_mac: Fix TX cleaning
pasemi_mac: Fix TX cleaning
This is a bit awkward. We don't have a timer-delayed interrupt on TX
complete, but we have a count threshold. So set that reasonably high
(32 packets), and schedule the NAPI poll when it goes off. Also bump a
regular timer that will take care of rotting packets for the last 1..31
ones in case we don't trigger a TX interrupt (and there's no RX activity
that would otherwise trigger the poll).
The longer-term fix is to separate TX from RX NAPI and do two separate
poll loops.
Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/pasemi_mac.h')
-rw-r--r-- | drivers/net/pasemi_mac.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/pasemi_mac.h b/drivers/net/pasemi_mac.h index 64b2047d19f0..c6555edba55d 100644 --- a/drivers/net/pasemi_mac.h +++ b/drivers/net/pasemi_mac.h @@ -34,6 +34,7 @@ struct pasemi_mac_txring { unsigned int next_to_clean; struct pasemi_mac_buffer *ring_info; struct pasemi_mac *mac; /* Needed in intr handler */ + struct timer_list clean_timer; }; struct pasemi_mac_rxring { |