aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/3com/3c59x.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/3com/3c59x.c')
-rw-r--r--drivers/net/ethernet/3com/3c59x.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/3com/3c59x.c b/drivers/net/ethernet/3com/3c59x.c
index 41095ebad97f..2d1ce3c5d0dd 100644
--- a/drivers/net/ethernet/3com/3c59x.c
+++ b/drivers/net/ethernet/3com/3c59x.c
@@ -2382,6 +2382,7 @@ boomerang_interrupt(int irq, void *dev_id)
2382 void __iomem *ioaddr; 2382 void __iomem *ioaddr;
2383 int status; 2383 int status;
2384 int work_done = max_interrupt_work; 2384 int work_done = max_interrupt_work;
2385 int handled = 0;
2385 2386
2386 ioaddr = vp->ioaddr; 2387 ioaddr = vp->ioaddr;
2387 2388
@@ -2400,6 +2401,7 @@ boomerang_interrupt(int irq, void *dev_id)
2400 2401
2401 if ((status & IntLatch) == 0) 2402 if ((status & IntLatch) == 0)
2402 goto handler_exit; /* No interrupt: shared IRQs can cause this */ 2403 goto handler_exit; /* No interrupt: shared IRQs can cause this */
2404 handled = 1;
2403 2405
2404 if (status == 0xffff) { /* h/w no longer present (hotplug)? */ 2406 if (status == 0xffff) { /* h/w no longer present (hotplug)? */
2405 if (vortex_debug > 1) 2407 if (vortex_debug > 1)
@@ -2501,7 +2503,7 @@ boomerang_interrupt(int irq, void *dev_id)
2501handler_exit: 2503handler_exit:
2502 vp->handling_irq = 0; 2504 vp->handling_irq = 0;
2503 spin_unlock(&vp->lock); 2505 spin_unlock(&vp->lock);
2504 return IRQ_HANDLED; 2506 return IRQ_RETVAL(handled);
2505} 2507}
2506 2508
2507static int vortex_rx(struct net_device *dev) 2509static int vortex_rx(struct net_device *dev)