Re: [PATCH] Remove BKL from fs/locks.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux