Dan Fandrich | 6 Mar 18:28
Favicon

Re: PATCH dm9ks interrupt handling


On Tue, Mar 06, 2007 at 07:51:50AM -0800, chrispe wrote:
> I was having problems with the OSD not receiving packets on a busy
> network. Typically I would notice this when a telnet session hung for
> 5-15 seconds when I pressed a key, but it also happened in many other
> circumstances.

I've noticed exactly the same problem with my telnet sessions.

> I discovered that the driver had some code that disabled the receive
> interrupt after 10 packets were received. The interrupt would be re-
> enabled by completing a transmit or by a 5 second timer. This somewhat
> crazy code was presumably designed to reduce the load on the processor
> (or maybe the IRQ system) when the device is not actively
> communicating. However, on a network with a moderate amount of
> broadcast traffic it was very common for the device to stop receiving
> for several seconds and then overrun its receive buffer when the
> interrupt was re-enabled.

Crazy is right!  I'd be very curious to hear what the rationale was for
that.  

> I have removed this mechanism and also removed the bogus ioctl handler
> that just returned success to all calls, which makes things like the
> mii interface look like they work, but always return junk!

Sounds like more crazyness to me.  Maybe that was someone's brilliant
solution to get rid of an "ioctl not supported" message somewhere.
I'm all for these patches.

>>> Dan
--

-- 
http://www.MoveAnnouncer.com              The web change of address service
          Let webmasters know that your web site has moved


Gmane