Messages in this thread | | | Date | Thu, 29 Jul 2004 11:36:26 -0700 | Subject | Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch | From | Bill Huey (hui) <> |
| |
On Thu, Jul 29, 2004 at 08:21:10PM +0200, Ingo Molnar wrote: > * Scott Wood <scott@timesys.com> wrote: > ok, i see - this makes 100% sense. I'm wondering how intrusive such an > all-preemptive patchset is? There are some problems with per-CPU data > structures on SMP. Right now holding a spinlock means one can use > smp_processor_id() and rely on it staying constant in the critical > section. With a mutex in the same place all such assumptions would > break. Is there some automatic way to deal with these issues (or to at > least detect them reliably?).
Make smp_processor_id check if preempt_count() is non-zero to make sure that you're running within a non-preemptable critical section (scheduler deferred). Do the same with local_irq_* critical section by checking to see if interrupts are disabled. They are also non-preemptable (hardware defered).
That's my suggestion.
bill
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |