Messages in this thread | | | Date | Fri, 15 Oct 2004 07:59:16 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [ANNOUNCE] Linux 2.6 Real Time Kernel |
| |
On Thu, Oct 14, 2004 at 09:18:10AM +0200, Ingo Molnar wrote: > > * Dipankar Sarma <dipankar@in.ibm.com> wrote: > > > On Tue, Oct 12, 2004 at 07:50:29AM +0200, Ingo Molnar wrote: > > > > > > regarding RCU serialization - i think that is the way to go - i dont > > > think there is any sensible way to extend RCU to a fully preempted > > > model, RCU is all about per-CPU-ness and per-CPU-ness is quite limited > > > in a fully preemptible model. > > > > It seems that way to me too. Long ago I implemented preemptible RCU, > > but did not follow it through because I believed it was not a good > > idea. The original patch is here : > > > > http://www.uwsg.iu.edu/hypermail/linux/kernel/0205.1/0026.html > > interesting! > > > This allows read-side critical sections of RCU to be preempted. It > > will take a bit of work to re-use it in RCU as of now, but I don't > > think it makes sense to do so. [...] > > note that meanwhile i have implemented another variant: > > http://marc.theaimsgroup.com/?l=linux-kernel&m=109771365907797&w=2 > > i dont think this will be the final interface (the _rt postfix is > stupid, it should probably be _spin?), but i think this is roughly the > structure of how to attack it - a minimal extension to the RCU APIs to > allow for serialization. What do you think about this particular > approach?
One caution (which you are no doubt already aware of) -- if an RCU algorithm that reads (rcu_read_lock()/rcu_read_unlock()) in process context and updates in softirq/bh/irq context, you can see deadlocks.
Thanx, Paul
> > [...] My primary concern is DoS/OOM situation due to preempted tasks > > holding up RCU. > > in the serialization solution in -U0 it would be possible to immediately > free the RCU entries and hence have no DoS/OOM situation - although the > -U0 patch does not do this yet. > > Ingo > - > 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/ > > - 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/
| |