diff options
author | Jesse Brandeburg <jesse.brandeburg@intel.com> | 2008-07-08 18:51:27 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-07-11 01:20:27 -0400 |
commit | 72ab51954d108e4999b3c958ae21da731d2d789a (patch) | |
tree | 6b3003cb5907b5b5a11abc814d2971a93e720ffa | |
parent | a3dc3da02a7c29237ca4ce3ec17f0e1f87ff0a06 (diff) |
ixgb: check down state before enable irq
in order to prevent the case where poll_disable is waiting
on our device to permanently, check the flag to make sure we're not
down or closing down before re-enabling interrupts.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
-rw-r--r-- | drivers/net/ixgb/ixgb_main.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c index ec8bce154364..60cad65dbc2e 100644 --- a/drivers/net/ixgb/ixgb_main.c +++ b/drivers/net/ixgb/ixgb_main.c | |||
@@ -1782,7 +1782,8 @@ ixgb_clean(struct napi_struct *napi, int budget) | |||
1782 | /* If budget not fully consumed, exit the polling mode */ | 1782 | /* If budget not fully consumed, exit the polling mode */ |
1783 | if (work_done < budget) { | 1783 | if (work_done < budget) { |
1784 | netif_rx_complete(netdev, napi); | 1784 | netif_rx_complete(netdev, napi); |
1785 | ixgb_irq_enable(adapter); | 1785 | if (!test_bit(__IXGB_DOWN, &adapter->flags)) |
1786 | ixgb_irq_enable(adapter); | ||
1786 | } | 1787 | } |
1787 | 1788 | ||
1788 | return work_done; | 1789 | return work_done; |