bnx2: Use proper handler during netpoll.
authorMichael Chan <mchan@broadcom.com>
Tue, 23 Mar 2010 13:13:12 +0000 (13:13 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 24 Mar 2010 06:19:56 +0000 (23:19 -0700)
Netpoll needs to call the proper handler depending on the IRQ mode
and the vector.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bnx2.c

index 417de1c..a257bab 100644 (file)
@@ -7646,9 +7646,11 @@ poll_bnx2(struct net_device *dev)
        int i;
 
        for (i = 0; i < bp->irq_nvecs; i++) {
-               disable_irq(bp->irq_tbl[i].vector);
-               bnx2_interrupt(bp->irq_tbl[i].vector, &bp->bnx2_napi[i]);
-               enable_irq(bp->irq_tbl[i].vector);
+               struct bnx2_irq *irq = &bp->irq_tbl[i];
+
+               disable_irq(irq->vector);
+               irq->handler(irq->vector, &bp->bnx2_napi[i]);
+               enable_irq(irq->vector);
        }
 }
 #endif