Messages in this thread | | | Date | Tue, 22 Mar 2005 12:39:51 +0100 (MET) | From | Esben Nielsen <> | Subject | Re: Real-Time Preemption and RCU |
| |
On Tue, 22 Mar 2005, Ingo Molnar wrote:
> > * Esben Nielsen <simlo@phys.au.dk> wrote: > > > +static inline void rcu_read_lock(void) > > +{ > > + preempt_disable(); > > + __get_cpu_var(rcu_data).active_readers++; > > + preempt_enable(); > > +} > > this is buggy. Nothing guarantees that we'll do the rcu_read_unlock() on > the same CPU, and hence ->active_readers can get out of sync. >
Ok, this have to be handled in the mitigration code somehow. I have already added an current->rcu_read_depth++ so it ought to be painless. A simple solution would be not to mititagrate threads with rcu_read_depth!=0.
> Ingo >
Esben
- 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/
| |