Subject: Re: Interrupt Priorities on the footbridge...
To: Bjorn Roth <bjorn.roth@netinsight.se>
From: David Brownlee <abs@netbsd.org>
List: port-arm32
Date: 05/10/2000 23:07:16
On Wed, 10 May 2000, Bjorn Roth wrote:

> 1. If an interrupt is asserted during the run of an interrupt with
> higher IPL, it will be scheduled when the higher IPL irq returns. This
> is good, since most high-IPL routines do their job quickly.
> 
> However, every time an interrupt returns, the soft interrupts are run
> (dosoftints()). This no matter which IPL you came down from. This may
> not be a bug but is bad nonetheless. They should only be run from the
> lowest level of interrupt nesting.
> 
	Presumably it should be run when it come dowm from any IPL, iff
	there are no lower interrupts pending?

> 2. The clock interrupt routine hardclock() runs soft interrupts directly
> before returning. This gives about the same result as #1.
> 
	Would the fix be to only run soft interrupts if there are no
	other hard interrupts pending?

> 3. If two or more interrupts are asserted at the same time, only the
> first will be chosen with regard to its IPL. The rest will be run in the
> order they appear in the register.
> 
	That does seem like a reasonable fix :)

> If this doesn't seem like total bogus to you or others in the group, I
> can post the changes.

	I'm not the person to be commenting on your fixes, but they sound
	interesting, and I'm curious :)

		David/absolute
				       -- www.netbsd.org: No hype required --