All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	Matthew Wilcox <willy@linux.intel.com>,
	Christoph Hellwig <hch@lst.de>, Miklos Szeredi <mszeredi@suse.cz>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Ingo Molnar <mingo@redhat.com>, John Kacur <jkacur@redhat.com>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	Andrew Morton <akpm@linux-foundation.org>,
	Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [PATCH] Remove BKL from fs/locks.c
Date: Wed, 15 Sep 2010 16:42:03 -0400	[thread overview]
Message-ID: <20100915204203.GA27837@fieldses.org> (raw)
In-Reply-To: <1284501356.10782.139.camel@heimdal.trondhjem.org>

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.

  parent reply	other threads:[~2010-09-15 20:43 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-14 20:06 [PATCH] Remove BKL from fs/locks.c Arnd Bergmann
2010-09-14 20:20 ` Linus Torvalds
2010-09-14 20:39   ` Arnd Bergmann
2010-09-14 20:53     ` Linus Torvalds
2010-09-14 21:24       ` Arnd Bergmann
2010-09-14 21:55         ` Trond Myklebust
2010-09-15 16:30           ` Arnd Bergmann
2010-09-15 17:02             ` Sage Weil
2010-09-15 17:17               ` Arnd Bergmann
2010-09-15 18:22                 ` Sage Weil
2010-09-15 20:42           ` J. Bruce Fields [this message]
2010-09-16  8:28             ` Arnd Bergmann
2010-09-16 14:10               ` J. Bruce Fields

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100915204203.GA27837@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=Trond.Myklebust@netapp.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=fweisbec@gmail.com \
    --cc=hch@lst.de \
    --cc=jkacur@redhat.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=mszeredi@suse.cz \
    --cc=sfr@canb.auug.org.au \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=willy@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.