[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100915204203.GA27837@fieldses.org>
Date: Wed, 15 Sep 2010 16:42:03 -0400
From: "J. Bruce Fields" <bfields@...ldses.org>
To: Trond Myklebust <Trond.Myklebust@...app.com>
Cc: Arnd Bergmann <arnd@...db.de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
Matthew Wilcox <willy@...ux.intel.com>,
Christoph Hellwig <hch@....de>,
Miklos Szeredi <mszeredi@...e.cz>,
Frederic Weisbecker <fweisbec@...il.com>,
Ingo Molnar <mingo@...hat.com>, John Kacur <jkacur@...hat.com>,
Stephen Rothwell <sfr@...b.auug.org.au>,
Andrew Morton <akpm@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [PATCH] Remove BKL from fs/locks.c
On Tue, Sep 14, 2010 at 05:55:56PM -0400, Trond Myklebust wrote:
> On Tue, 2010-09-14 at 23:24 +0200, Arnd Bergmann wrote:
> > On Tuesday 14 September 2010 22:53:31 Linus Torvalds wrote:
> > > Oh well. I guess there's no incremental way to do things sanely. And
> > > nobody has patches to fix those users, I guess.
> >
> > The only critical user is fs/lockd, I can easily handle the rest.
> > When I talked to Bruce and Trond during LinuxCon, they told me that
> > it should be possible to separate the bits of fs/lockd that lock
> > against fs/locks.c and convert the former to use lock_flocks().
>
>
> The NFSv4 client is quite ready to just switch to using lock_flocks()
> now. There is nothing that depends on the magical properties of the BKL.
> I do also have someone working on BKL removal for the NLM/lockd client
> and am hoping that should be ready in a couple of weeks time.
>
> The timeline for the server is up to Bruce, however.
Looking over the server code.... The only code I see under the BKL is:
- a few lease callbacks in fs/nfsd/nfs4state.c, none of which
sleep at this point, so all should be fine under a spinlock or
whatever we want.
- fs/nfsd/nfs4state.c:check_for_locks(), which explicitly takes
the BKL itself. All it does, though, is walk the lock list
for a given file and check whether any of them have a given
owner. It would be trivial to put it under some other lock
and/or move it to locks.c.
--b.
--
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