lkml.org 
[lkml]   [2011]   [May]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Mysterious CFQ crash and RCU
On Tue, May 24, 2011 at 12:20:40AM +0200, Paul Bolle wrote:
> On Mon, 2011-05-23 at 08:38 -0700, Paul E. McKenney wrote:
> > Running under CONFIG_PREEMPT=y (along with CONFIG_TREE_PREEMPT_RCU=y)
> > could be very helpful in and of itself. CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
> > can also be helpful. In post-2.6.39 mainline, it should be possible
> > to set CONFIG_DEBUG_OBJECTS_RCU_HEAD=y without CONFIG_PREEMPT=y, but
> > again, CONFIG_PREEMPT=y can help find problems.
>
> 0) The first thing I tried (from your suggestions) was
> CONFIG_DEBUG_OBJECTS_RCU_HEAD=y. Given its dependencies (and, well, the
> build system I used) I ended up with:
>
> $ grep -e PREEMPT -e RCU /boot/config-2.6.39-0.local3.fc16.i686 |
> grep -v "^#"
> CONFIG_TREE_PREEMPT_RCU=y
> CONFIG_PREEMPT_RCU=y
> CONFIG_RCU_FANOUT=32
> CONFIG_PREEMPT_NOTIFIERS=y
> CONFIG_PREEMPT=y
> CONFIG_DEBUG_OBJECTS_RCU_HEAD=y
> CONFIG_DEBUG_PREEMPT=y
> CONFIG_PROVE_RCU=y
> CONFIG_SPARSE_RCU_POINTER=y
>
> It looks like I am unable to trigger the issue we're talking about here
> when using that config.

Interesting. One way for this to happen is to block inside an RCU
read-side critical section. I need to think about appropriate
diagnostics for this.

> 1) For reference, the config of a kernel that does trigger it had:
>
> $ grep -e PREEMPT -e RCU /boot/config-2.6.39-0.local2.fc16.i686 |
> grep -v "^#"
> CONFIG_TREE_RCU=y
> CONFIG_RCU_FANOUT=32
> CONFIG_RCU_FAST_NO_HZ=y
> CONFIG_PREEMPT_NOTIFIERS=y
> CONFIG_PREEMPT_VOLUNTARY=y
> CONFIG_PROVE_RCU=y
> CONFIG_SPARSE_RCU_POINTER=y
>
> > > Again CONFIG_TREE_PREEMPT_RCU is available only if PREEMPT=y. So should
> > > we enable preemtion and CONFIG_TREE_PREEMPT_RCU=y and try to reproduce
> > > the issue?
> >
> > Please!
>
> 2) It appears I can't reproduce with those options enabled (see above).
>
> > Polling is fine. Please see attached for a script to poll at 15-second
> > intervals. Please also feel free to adjust, just tell me what you
> > adjusted.
>
> And should I now try to run that script on a config that triggers this
> issue (such as the config under 1) above)?

It might help while I am working out more targetted diagnostics.

Thanx, Paul


\
 
 \ /
  Last update: 2011-05-24 06:17    [from the cache]
©2003-2011 Jasper Spaans