lkml.org 
[lkml]   [2010]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] Remove BKL from fs/locks.c
Date
On Wednesday 15 September 2010 22:42:03 J. Bruce Fields wrote:
> 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.

Ok. In the version of the patch I sent out yesterday, I came to the
same conclusion and put both of these under lock_flocks(), which
is still the BKL but can be converted to a spinlock after we have
sorted out ceph and lockd. If you and others are fine with this patch,
I'll add it to my bkl/config series.

Note that walking the i_flock list needs to use lock_flocks()
(or the BKL), not a private lock. I guess that's what you are saying
anyway, just making sure.

Arnd


\
 
 \ /
  Last update: 2010-09-16 10:31    [from the cache]
©2003-2011 Jasper Spaans