[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090919072349.GC15292@elte.hu>
Date: Sat, 19 Sep 2009 09:23:49 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Trond Myklebust <trond.myklebust@....uio.no>,
Andrew Morton <akpm@...ux-foundation.org>
Cc: Joe Korty <joe.korty@...r.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Al Viro <viro@...iv.linux.org.uk>,
Steve French <sfrench@...ibm.com>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: circular locking dependency detected panic in filldir when
CONFIG_PROVE_LOCKING=y
* Trond Myklebust <trond.myklebust@....uio.no> wrote:
> On Fri, 2009-09-18 at 17:15 -0400, Joe Korty wrote:
> > I experienced a might_fault panic from NFS's use of filldir
> > in a 2.6.31 kernel compiled with CONFIG_PROVE_LOCKING=y.
> >
> > Looking at filldir, I see it is accessing user space with
> > __put_dir's (which are inatomic) and with one copy_to_user
> > (which is not inatomic). It is the single copy_to_user
> > which is causing the might_fault panic.
> >
> > It doesn't make any sense to be mixing use of inatomic
> > and non-inatomic services in filldir. Either all should be
> > the inatomic version, or none should be.
> >
> > The might_fault condition being reported by the panic looks
> > real to me, so I suspect the wrong answer is converting
> > everything to the inatomic version, since that just
> > suppresses the circular dependency check while leaving
> > the circular dependency in place.
>
> Yes. This is known... Please see
> http://thread.gmane.org/gmane.linux.nfs/28578
> and
> http://thread.gmane.org/gmane.linux.nfs/27406
>
> I'm still hoping the VM folks can see fit to merge Peter's fix at some
> point...
Ouch, those patches at:
http://programming.kicks-ass.net/kernel-patches/mmap-vs-nfs/
... are 2 years old. Higher intensity prodding needed to get this
moving?
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists