Thank you for your confirmation. It's a great help.
In my understanding, it's better to just return IRQ_NONE when
INT_ASSERTERD is not set even if CONFIG_E1000E_NAPI
is not defined.
--- netdev.c Wed Jun 24 07:32:20 2009
+++ netdev.c.new Mon Jul 6 11:27:51 2009
@@ -1527,7 +1527,6 @@
if (!icr || test_bit(__E1000_DOWN, &adapter->state))
return IRQ_NONE; /* Not our interrupt */
-#ifdef CONFIG_E1000E_NAPI
/*
* IMS will not auto-mask if INT_ASSERTED is not set, and if it is
* not set, then the adapter didn't send an interrupt
@@ -1535,7 +1534,6 @@
if (!(icr & E1000_ICR_INT_ASSERTED))
return IRQ_NONE;
-#endif /* CONFIG_E1000E_NAPI */
/*
* Interrupt Auto-Mask...upon reading ICR,
* interrupts are masked. No need for the
Thanks,
Hizume
> -----Original Message-----
> From: Brandeburg, Jesse [mailto:[email protected]]
> Sent: Friday, July 03, 2009 12:42 AM
> To: Yosuke HIZUME
> Cc: [email protected]
> Subject: RE: [E1000-devel] e1000e: Rx Descriptor FIFO Parity Error
>
> On Wed, 1 Jul 2009, Yosuke HIZUME wrote:
> > I understand as follows. Is it right understanding?
>
> Yes.
>
> > - Irq11 for eth0 is shared with uhci_hdc and dsppci2 because MSI is
> > unavailable.
> > - When the interrupt for either uhci_hdc or dsppci2 is
> asserted, we can see
> > e1000_intr() called with ICR.INT_ASSERTED=0b.
> > - If the other device's interrupt is asserted during e1000
> down state,
> > e1000_intr()
> > and clean_rx/tx_irq functions are processed in an
> uncertain initialize
> > condition,
> > then sometimes it could destroy some buffers and variables.
> > - It is fixed in e1000e-1.0.2.5.
>
> your description is 100% correct.
------------------------------------------------------------------------------
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel