On Tue, 16 Jan 2007 12:56:24 -0500 Mathieu Desnoyers <[EMAIL PROTECTED]> wrote:
> This patch adds a barrier() to lockdep.c lockdep_recursion updates. This > variable behaves like the preemption count and should therefore use similar > memory barriers. > > This patch applies on 2.6.20-rc4-git3. > > Signed-off-by: Mathieu Desnoyers <[EMAIL PROTECTED]> > > --- a/kernel/lockdep.c > +++ b/kernel/lockdep.c > @@ -166,12 +166,14 @@ static struct list_head chainhash_table[CHAINHASH_SIZE]; > void lockdep_off(void) > { > current->lockdep_recursion++; > + barrier(); > } > > EXPORT_SYMBOL(lockdep_off); > > void lockdep_on(void) > { > + barrier(); > current->lockdep_recursion--; > } I am allergic to undocumented barriers. It is often unobvious what the barrier is supposed to protect against, yielding mystifying code. This is one such case. Please add code comments. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/