Ayaz Abdulla wrote:
if (nv_alloc_rx(dev)) {
- spin_lock(&np->lock);
+ spin_lock_irqsave(&np->lock, flags);
Tiny point:
there is not need for irqsave(): we are in timer context, that guarantees:
- bottom half disabled
- interrupts enabled
Just use spin_lock_irq() and spin_unlock_irq().
@@ -2882,11 +2900,12 @@
writel(mask, base + NvRegIrqMask);
pci_push(base);
[within nv_do_nic_poll(): reenable the interrupts that were disabled to
prevent a livelock within the irq handler]
I still don't understand how this works for the msi-x case:
nv_nic_irq_tx writes NVREG_IRQ_TX_ALL to NvRegIrqMask to disable the tx
interrupts.
nv_do_nic_poll does exactly the same thing, and this should reenable
them. Is that correct?
If yes, please add a comment.
--
Manfred
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html