IGB driver not getting Rx interrupt
jsteckli at os.inf.tu-dresden.de
Mon May 14 00:08:02 CEST 2012
On Sun, 2012-05-13 at 23:53 +0200, Adam Lackorzynski wrote:
> On Thu May 10, 2012 at 15:14:47 -0700, Shashi Sharma wrote:
> > I am pretty sure now that Fiasco's ISR is not getting invoked. I put a
> > printf in the following interrupt handler in fiasco's
> > src/kern/ia32/dirq-ia32-ux.cpp.
> > ----
> > extern "C" FIASCO_FASTCALL
> > void
> > irq_interrupt(Mword _irqobj, Mword ip)
> > ----------
> > And it never gets invoked.
> > You suggested in your last e-mail to "check whether the card is
> > reporting a pending interrupt". But I dont really know how to do that.
> > Is there some way in JDB to do that?
> Usually a device has a device register that indicates whether an
> interrupt has been asserted. So in JDB you could look up the this
> register, or add some printf in the driver or so to see if its contents
> change after some packet transfer should have happened.
For IGB that register would be called ICR or EICR (interrupt cause
register). Hope that helps finding it in the source.
More information about the l4-hackers