This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
Re: system slowdown
Hi Dave,
In short, yes.
In long, that was the first thing I checked, but the ethernet
interrupt pending bit was being cleared properly. And I assumed that
all interrupt pending bits were.
But you made me look back and I realized the timer interrupt is not
cleared in the same way as the rest, you have to write back a value to
a CPU register, and the code doing that was bugged.
So thanks a lot,
Alex
On 3/30/06, Dave Korn <dave.korn@artimi.com> wrote:
> On 30 March 2006 10:01, Alex Gonzalez wrote:
>
> > What I am seeing, and I realize how strange this sounds, is that the
> > first packet processed by the driver is processed (received, relayed
> > and sent) in less than 1us, and then suddenly the system slows down
> > hugely.
>
> That doesn't sound the least bit strange to me! I'd be willing to bet that
> in (one of) the interrupt service routine(s) triggered by that very first
> packet, you've forgotten to clear a(n) interrupt-pending bit(s) somewhere, and
> after it returns the system is continually taking interrupts, checking all the
> irq sources and finding nothing's fired, returning from the interrupt and
> managing to process probably a single instruction before taking another
> interrupt.
>
> Am I right? :)
>
>
> cheers,
> DaveK
> --
> Can't think of a witty .sigline today....
>
>