aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bnx2.h
diff options
context:
space:
mode:
authorMichael Chan <mchan@broadcom.com>2005-11-04 11:53:48 -0500
committerJohn W. Linville <linville@tuxdriver.com>2005-11-05 21:00:03 -0500
commitf4e418f7f3286f854883f9f7e3bbf7005340d2de (patch)
tree655a1c3c3ea012e0521b83728034b7a675ae8e5f /drivers/net/bnx2.h
parente3648b3d8de3b37fae7acbb57db1e001a19cd3b7 (diff)
[PATCH] bnx2: refine bnx2_poll
Refine bnx2_poll() logic to write back the most up-to-date status tag when all work has been processed. This eliminates some occasional extra interrupts when a older status tag is written even though all work has been processed. The idea is to read the status tag just before exiting bnx2_poll() and then check again for any new work. If no new work is pending, the status tag written back will not generate any extra interrupt. This logic is similar to the changes David Miller did to tg3_poll(). Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/bnx2.h')
-rw-r--r--drivers/net/bnx2.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/bnx2.h b/drivers/net/bnx2.h
index 012586e4ba0b..76bb5f1a250b 100644
--- a/drivers/net/bnx2.h
+++ b/drivers/net/bnx2.h
@@ -3914,6 +3914,9 @@ struct bnx2 {
3914 u16 tx_cons; 3914 u16 tx_cons;
3915 int tx_ring_size; 3915 int tx_ring_size;
3916 3916
3917 u16 hw_tx_cons;
3918 u16 hw_rx_cons;
3919
3917#ifdef BCM_VLAN 3920#ifdef BCM_VLAN
3918 struct vlan_group *vlgrp; 3921 struct vlan_group *vlgrp;
3919#endif 3922#endif