[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20090318.233545.163357233.davem@davemloft.net>
Date: Wed, 18 Mar 2009 23:35:45 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: romieu@...zoreil.com
Cc: fzu@...gehoertderstaat.de, netdev@...r.kernel.org, rjw@...k.pl
Subject: Re: [PATCH] r8169: Fix irq masking in rtl8169_interrupt()
From: Francois Romieu <romieu@...zoreil.com>
Date: Wed, 18 Mar 2009 23:36:29 +0100
> Karsten Wiese <fzu@...gehoertderstaat.de> :
> > Am Mittwoch 18 März 2009 schrieb Francois Romieu:
> [...]
> > > If netif_rx_schedule fails after napi is enabled, there is a
> > > racing poll thread to care for the transfer.
> > >
> > > Stated differently the bug is noticeable because napi_enable()
> > > should be called before request_irq() in rtl8169_open, right ?
> >
> > Propably yes. That would mean the first interrupt is received before
> > rtl_hw_start() is called in rtl8169_open. The source of that
> > interrupt would be something else then?
>
> All we need is thus a shared interrupt racing on a different CPU
> with rtl8169_open and some IO versus memory reordering so that
> the hardware is started and a change in the status register can
> be seen in the IRQ handler before napi_enable/NAPI_STATE_SCHED
> escapes from the CPU where rtl8169_open is running...
>
> It does not look like a credible explanation. :o/
Agreed, looking at how this part of the driver works I can't
see how this condition can arise either.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists