Re: [PATCH] fix tasklist + find_pid() with CONFIG_PREEMPT_RCU

From: Peter Zijlstra
Date: Wed Jan 30 2008 - 09:18:34 EST



On Tue, 2008-01-29 at 15:02 -0800, Andrew Morton wrote:
> On Tue, 29 Jan 2008 19:40:19 +0300
> Oleg Nesterov <oleg@xxxxxxxxxx> wrote:
>
> > With CONFIG_PREEMPT_RCU read_lock(tasklist_lock) doesn't imply rcu_read_lock(),
>
> I'm suspecting that we have other code which assumes that read_lock, write_lock
> and spin_lock imply rcu_read_lock().
>
> I wonder if there are any sane runtime checks we can put in there to find
> such problems.

I have a lockdep annotation that finds rcu_dereference() usages outside
of rcu_read_lock().

Trouble is the amazing amount of output, I haven't come round to going
through it and annotation the false positives (think rcu safe library
routines called from contexts where the rcu capability is not used).



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/