[Cbe-oss-dev] [PATCH] spidernet: fix interrupt reason recognition
Ishizaki Kou
kou.ishizaki at toshiba.co.jp
Wed Aug 29 18:58:21 EST 2007
Linas-san,
Ishizaki Kou wrote:
> Linas Vepstas wrote:
> > On Mon, Aug 20, 2007 at 10:13:27PM +0900, Ishizaki Kou wrote:
> > > Please apply this to 2.6.23.
> >
> > I'll review and forward shortly. Kick me if you don't see a formal
> > reply in a few days.
> >
> > > And also, please apply the following Arnd-san's patch to fix a problem
> > > that spidernet driver sometimes causes a BUG_ON at open.
> > >
> > > http://patchwork.ozlabs.org/cbe-oss-dev/patch?id=12211
> >
> > Are you sure? This patch no longer applies cleanly, in part because
>
> I see. I'll send another applicable patch.
>
> > your patch "[PATCH] spidernet: improve interrupt handling"
> > from Mon, 09 Jul 2007 added a spider_net_enable_interrupts(card);
> > at the end of spider_net_open(). Because of this, it seems like
> > Arnd's patch is no longer needed, right?
>
> As you pointed out, we intended that "[PATCH] spidernet: improve
> interrupt handling" solves the same problem which Arnd's patch solves.
>
> When spider_net_open() is called, interrupt reasons sometimes remain
> on interrupt status register, even though they are masked by mask
> register. With this patch, spider_net_interrupt() compares the value
> of interrupt status register with SPIDER_NET_INTX_MASK_VALUE, not with
> interrupt mask register value. As a result, spider_net_interrupt()
> (which is called from request_irq() in spider_net_open()) starts
> polling and causes BUG_ON().
>
> So, netif_poll_enable() must be called before request_irq() is
> called. This is the reason that we also need Arnd's patch.
How about following two patches that I posted last week:
http://patchwork.ozlabs.org/cbe-oss-dev/patch?id=12997
http://patchwork.ozlabs.org/cbe-oss-dev/patch?id=13049
Best regards,
Kou Ishizaki
More information about the cbe-oss-dev
mailing list