Re: [-mm PATCH] RCU: debug sleep check

From: Andrew Morton
Date: Sun Sep 24 2006 - 17:45:25 EST


On Mon, 25 Sep 2006 03:05:08 +0530
Dipankar Sarma <dipankar@xxxxxxxxxx> wrote:

> On Sun, Sep 24, 2006 at 11:56:46AM -0700, Andrew Morton wrote:
> > On Mon, 25 Sep 2006 00:05:09 +0530
> > Dipankar Sarma <dipankar@xxxxxxxxxx> wrote:
> >
> > > Add a debug check for rcu read-side critical section code calling
> > > a function that might sleep which is illegal. The check is enabled only
> > > if CONFIG_DEBUG_SPINLOCK_SLEEP is set.
> > >
> >
> > Does this actually change anything? rcu_read_lock is preempt_disable(), and
> > might_sleep() already triggers if called inside preempt_disable().
>
> It makes a difference if CONFIG_PREEMPT=n. AFAICS, preempt_disable()
> is a nop then and rcu needs its own check for sleeping while
> in read-side critical section.

Right. I think enough people run with CONFIG_PREEMPT=y to make this
change rather unnecessary.

And if there are developers out there who are testing their code without an
effective CONFIG_DEBUG_SPINLOCK_SLEEP, then *that* is what we need to fix,
no?

-
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/