Subject: Re: Serial Port Funkiness
To: None <dwelch@uplink.com>
From: Bill Studenmund <wrstuden@loki.stanford.edu>
List: port-mac68k
Date: 10/28/1995 14:57:41
> Anyway, I'm getting xfer rates of 2.5ksec over my PPP link. But I'm
> getting a lot of "serial overflows" on long transfers. Has anyone on
> an SE/30 done better?

Being the person who's working on the serial port code, perhaps I should
speak up. :-)

What exactly is the error? The new code will report two kinds of overflows,
fifo and ring. If you're getting fifo overflows, the interrupt handler is
not getting called often enough (or it's seeing overflows when they
don't exist, not likely). A number of people are seeing this problem.
I'm not sure where the problem is. The current interrupt handler tries to
empty the fifo each time it gets called, so these errors should be reduced.
Either I didn't get the fifo-draining code right, or something is sitting
around with interrupts turned off.

If the error is a ring overflow, the second-half of the interrupt handler is
not getting called often enough. The ring is the place where requests
from the interrupt handler wait for the kernel to process. I've not
heard of problems here, but they'd be easy to fix. The ring is just an
array which can be grown.

I think most of the problem is that the fifo is the on-chip fifo, which only
has 3 characters worth of space. :-(

Oh, what baud rate are you using? Are you doing lots of disk accesses?

Take care,

Bill