Subject: Re: Interrupt, interrupt threads, continuations, and kernel lwps
To: Pavel Cahyna <pavel@netbsd.org>
From: Andrew Doran <ad@netbsd.org>
List: tech-kern
Date: 06/16/2007 15:06:31
On Sat, Jun 16, 2007 at 03:34:36PM +0200, Pavel Cahyna wrote:
> On Sat, Jun 16, 2007 at 02:26:48PM +0100, Andrew Doran wrote:
> > On Fri, Jun 15, 2007 at 11:20:42PM +0200, Pavel Cahyna wrote:
> > 
> > > What would this mean? Replacing splbio, splnet, etc. by
> > > spllow/splmid/splhigh?
> > 
> > That's the plan. It depends on the platform but looks roughly like this:
> > 
> > bio, net, tty, vm -> low
> > sched, clock, audio -> mid
> > statclock, serial, ipi -> high
> 
> Isn't it better to make splnet, splbio etc. aliases for spllow? It is easy
> to rename them, but not easy to rename them back if the need to restore
> those levels arise.

Once there are device drivers at those levels that don't take the kernel
lock then it's no longer possible to sustain the concept of different
levels. splvm/splnet are the only ones that make a big impact and they
typically disable the other (low priority) levels.

Once the soft levels go, having all of the others doesn't make a lot of
sense to me. There are to my mind distinct levels where things become more
time sensitive and I have tried to capture that with the different levels.

Andrew