login
Header Space

 
 

Re: Interrupt, interrupt threads, continuations, and kernel lwps

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Jason Thorpe <thorpej@...>
Cc: Matt Thomas <matt@...>, <tech-kern@...>
Date: Wednesday, February 21, 2007 - 6:51 pm

Hi Jason,

On Wed, Feb 21, 2007 at 10:01:44AM -0800, Jason Thorpe wrote:


Interrupt dispatch will be simpler yes. Device drivers would become more
complicated, and they are more numerous.


If you have a device that's particularly sensitive to interrupt latency,
then the two level model is a good one, I agree completely. There is
nothing to prevent that model from being used where it's a good fit.

For the general case, I don't agree though. On recent processors with long
instruction pipelines, serializing control operations are really expensive.
x86 chips from 5 years ago are faster in this regard than the current Intel
offerings - in real time, not clock cycles. I'm keen to avoid that kind of
"funneling" of work unless it's really neccessary - meaning, it's existence
actually has a justifiable benefit, So I have been trying to eliminate these
kinds of operations where they are unnecessary, e.g: during lock release,
during splx(), during syscalls, in the locking scheme devised for the
scheduler and so on.

What I want to do will on x86 add 29 arithmetic instructions to the
interrupt path (as of now). That's means in the common, non blocking case,
it's ~free. I'd be pretty bummed if we undo some of that and the reasoning
for doing so is to make the system a better fit for ~20 year old systems.


Yup, modifing the interrupt handling is tricky..


Vax and m68k we can deal with. The interrupt LWP scheme probably doesn't
suit them particularly well, but it is a good match for current offerings.
 

Mmm.. No sale on the consistency ticket, sorry. :-)

Cheers,
Andrew
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: Interrupt, interrupt threads, continuations, and kernel ..., Andrew Doran, (Wed Feb 21, 6:51 pm)
Re: Interrupt, interrupt threads, continuations, and kernel ..., Joerg Sonnenberger, (Thu Feb 22, 5:59 pm)
Re: Interrupt, interrupt threads, continuations, and kernel ..., Steven M. Bellovin, (Wed Feb 21, 10:21 pm)
speck-geostationary