|   xen-devel
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock 
| To: | Andrea Arcangeli <aarcange@xxxxxxxxxx> |  
| Subject: | [Xen-devel] Re: [PATCH] fix pgd_lock deadlock |  
| From: | Ingo Molnar <mingo@xxxxxxx> |  
| Date: | Wed, 16 Feb 2011 11:28:01 +0100 |  
| Cc: | Jeremy Fitzhardinge <jeremy@xxxxxxxx>,	"Xen-devel@xxxxxxxxxxxxxxxxxxx" <Xen-devel@xxxxxxxxxxxxxxxxxxx>,	Ian Campbell <Ian.Campbell@xxxxxxxxxx>,	Peter Zijlstra <peterz@xxxxxxxxxxxxx>,	the arch/x86 maintainers <x86@xxxxxxxxxx>, Hugh Dickins <hughd@xxxxxxxxxx>,	Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>,	Jan Beulich <JBeulich@xxxxxxxxxx>, Andi Kleen <ak@xxxxxxx>,	Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>,	Johannes Weiner <jweiner@xxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>,	Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Larry Woodman <lwoodman@xxxxxxxxxx> |  
| Delivery-date: | Wed, 16 Feb 2011 02:29:08 -0800 |  
| Envelope-to: | www-data@xxxxxxxxxxxxxxxxxxx |  
| In-reply-to: | <20110216101521.GU5935@xxxxxxxxxxxxx> |  
| List-help: | <mailto:xen-devel-request@lists.xensource.com?subject=help> |  
| List-id: | Xen developer discussion <xen-devel.lists.xensource.com> |  
| List-post: | <mailto:xen-devel@lists.xensource.com> |  
| List-subscribe: | <http://lists.xensource.com/mailman/listinfo/xen-devel>,	<mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |  
| List-unsubscribe: | <http://lists.xensource.com/mailman/listinfo/xen-devel>,	<mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |  
| References: | <20110215190710.GL5935@xxxxxxxxxxxxx>	<alpine.LFD.2.00.1102152020590.26192@xxxxxxxxxxxxxxxxxxxxxxx>	<20110215195450.GO5935@xxxxxxxxxxxxx>	<alpine.LFD.2.00.1102152102530.26192@xxxxxxxxxxxxxxxxxxxxxxx>	<alpine.LFD.2.00.1102152125180.26192@xxxxxxxxxxxxxxxxxxxxxxx>	<20110215225234.GP5935@xxxxxxxxxxxxx>	<alpine.LFD.2.00.1102160002300.26192@xxxxxxxxxxxxxxxxxxxxxxx>	<20110215231733.GR5935@xxxxxxxxxxxxx>	<1297850294.2413.30.camel@twins>	<20110216101521.GU5935@xxxxxxxxxxxxx> |  
| Sender: | xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |  
| User-agent: | Mutt/1.5.20 (2009-08-17) |  
| 
* Andrea Arcangeli <aarcange@xxxxxxxxxx> wrote:
> On Wed, Feb 16, 2011 at 10:58:14AM +0100, Peter Zijlstra wrote:
> > On Wed, 2011-02-16 at 00:17 +0100, Andrea Arcangeli wrote:
> > > On Wed, Feb 16, 2011 at 12:03:30AM +0100, Thomas Gleixner wrote:
> > > > I assume you run it with a lockdep enabled kernel as well, right ?
> > > 
> > > Yes, I always run with lockdep and prove locking enabled on my test
> > > box, not sure how it's meant to trigger more bugs in this case, the
> > > debug check that should be relevant for this is DEBUG_VM and that is
> > > enabled too of course. I didn't try DEBUG_PAGEALLOC yet.
> > 
> > I think what Thomas tried to tell you is that your
> > VM_BUG_ON(in_interrupt()) is fully redundant if you have lockdep
> > enabled.
> > 
> > Lockdep will warn you if a !irqsave lock is taken from IRQ context,
> > since that is a clear inversion problem.
> 
> Ah I get it now, but I prefer to have it on an all my builds, and
> I don't keep lockdep on for all builds (but I keep DEBUG_VM on). It's
> still only debug code that no production system will ever deal with,
> so it should be good to exercise it in more than on debug .config
> considering it's very low overhead (pgd_lock is never taken in fast
> paths) so it's suitable for a VM_BUG_ON.
The point both Thomas and Peter tried to point out to you, that adding 7 
instances 
of redundant debug checks:
+               VM_BUG_ON(in_interrupt());
+               VM_BUG_ON(in_interrupt());
+       VM_BUG_ON(in_interrupt());
+       VM_BUG_ON(in_interrupt());
+       VM_BUG_ON(in_interrupt());
+       VM_BUG_ON(in_interrupt());
+       VM_BUG_ON(in_interrupt());
to arch/x86/ is not acceptable, for the reasons stated. Please remove it from 
the 
patch.
Thanks,
        Ingo
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 | 
 
| <Prev in Thread] | Current Thread | [Next in Thread> |  | 
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, (continued)
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Thomas Gleixner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Larry Woodman
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Thomas Gleixner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Thomas Gleixner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Thomas Gleixner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Peter Zijlstra
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock,
Ingo Molnar <=
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Rik van Riel
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Ingo Molnar
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Konrad Rzeszutek Wilk
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Johannes Weiner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Johannes Weiner
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Jan Beulich
[Xen-devel] Re: [PATCH] fix pgd_lock deadlock, Andrea Arcangeli
 |  |  |