[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 8 Aug 2008 16:25:58 -0500
From: Nathan Lynch <ntl@...ox.com>
To: Benjamin Herrenschmidt <benh@...nel.crashing.org>
Cc: Segher Boessenkool <segher@...nel.crashing.org>,
mcarlson@...adcom.com, linuxppc-dev list <linuxppc-dev@...abs.org>,
netdev <netdev@...r.kernel.org>,
Michael Chan <mchan@...adcom.com>
Subject: Re: Strange tg3 regression with UMP fw. link reporting
Benjamin Herrenschmidt wrote:
> On Fri, 2008-08-08 at 10:58 +0200, Segher Boessenkool wrote:
> > > I don't know yet for sure what happens, but a quick look at the commit
> > > seems to show that the driver synchronously spin-waits for up to 2.5ms
> >
> > That's what the comment says, but the code says 2.5 _seconds_:
> >
> > + /* Wait for up to 2.5 milliseconds */
> > + for (i = 0; i < 250000; i++) {
> > + if (!(tr32(GRC_RX_CPU_EVENT) & GRC_RX_CPU_DRIVER_EVENT))
> > + break;
> > + udelay(10);
> > + }
> >
> > (not that milliseconds wouldn't be bad already...)
>
> Right, indeed. I think we have a good candidate for the problem :-)
I put a printk in tg3_wait_for_event_ack and I can confirm that it's
timing out frequently (every few seconds) on my system. Changing the
number of loop iterations to 250 alleviates the problem.
--
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