> > interprocessor interrupts are the obvious solution > but no one has bothered to implement them. >
i almost mentioned this, and it's on my list. i just haven't had the time. it turns out that a naive implementation of ipi'ing 1 proc per wakeup will have to watch out for the same races that bedeviled multiprocessor sleep/wakeup. the really naive solution of waking 'em all up is a very bad idea because you'll have n-1 procs duking it out over the run queue. perhaps i just ignorant of the standard solution. or perhaps the sleep/wakeup model isn't the right one for the situation. - erik
