All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Christoph Hellwig <hch@infradead.org>,
	Bryan Schumaker <bjschuma@netapp.com>,
	linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: nfsd changes for 2.6.37
Date: Wed, 27 Oct 2010 16:01:45 -0400	[thread overview]
Message-ID: <20101027200145.GE18974@fieldses.org> (raw)
In-Reply-To: <201010272148.47376.arnd@arndb.de>

On Wed, Oct 27, 2010 at 09:48:47PM +0200, Arnd Bergmann wrote:
> On Wednesday 27 October 2010 20:43:59 Linus Torvalds wrote:
> > On Wed, Oct 27, 2010 at 11:42 AM, Linus Torvalds
> > <torvalds@linux-foundation.org> wrote:
> > >
> > > Feel free to edit the message/patch to your hearts content.
> > 
> > Oh, and if you want me to just commit this part, I can do so. It
> > doesn't make much sense without the other parts to actually make it
> > useful, though, so it probably makes more sense to come with them.
> 
> Once Bruce is happy with the test results, you can pull it from
> 
> git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arnd/bkl.git flock

Not the useful url for us hoi polloi out here.  OK, looking at
git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl.git flock....

> I've rewritten all the changelogs to make more sense as a series,
> and split out the bits that turn lock_flocks into a spinlock to
> come last, so we get a bisectable series.
> 
> The contents are left unchanged.

Looks fine to me!

I haven't retested that, but I can see that the result is identical to
what I tested.

(You're missing Linus's comment fix, though, unless I'm confused.)

--b.


> 
> 	Arnd
> ---
> 
> commit b3426739cc8f7c7dd127ca8dad5e25195930cac1
> Author: Arnd Bergmann <arnd@arndb.de>
> Date:   Wed Oct 27 21:39:58 2010 +0200
> 
>     locks: turn lock_flocks into a spinlock
>     
>     Nothing depends on lock_flocks using the BKL
>     any more, so we can do the switch over to
>     a private spinlock.
>     
>     Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
>  fs/Kconfig |    1 -
>  fs/locks.c |    5 +++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> commit 55d3ff97c5c0b3dce39f705e2b1fe85818891822
> Author: Linus Torvalds <torvalds@linux-foundation.org>
> Date:   Wed Oct 27 12:38:12 2010 -0400
> 
>     locks: avoid fasync allocation under lock_flocks
>     
>     This splits fasync_helper into four functions: fasync_alloc,
>     fasync_free, fasync_insert_entry and fasync_remove_entry,
>     in order to allow the lease handling to call them directly
>     instead of going through fasync_helper.
>     
>     The fasync_helper interface really doesn't make sense outside
>     of ->fasync file operations, which use the same calling
>     conventions of passing flags in and out as the helper.
>     
>     After the change, fcntl_setlease can simply allocate the
>     new fasync_struct outside of lock_flocks, which is required
>     to turn that into a spinlock.
>     
>     Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
>     [bfields@redhat.com: rebase on top of my changes to Arnd's patch]
>     Signed-off-by: J. Bruce Fields <bfields@redhat.com>
>     [arnd: rewrite changelog text]
>     Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
>  fs/fcntl.c         |   66 +++++++++++++++++++++++++++++++++++++++------------
>  fs/locks.c         |   18 +++++++++++++-
>  include/linux/fs.h |    5 ++++
>  3 files changed, 72 insertions(+), 17 deletions(-)
> 
> commit c5b1f0d92c36851aca09ac6c7c0c4f9690ac14f3
> Author: Arnd Bergmann <arnd@arndb.de>
> Date:   Wed Oct 27 15:46:08 2010 +0200
> 
>     locks/nfsd: allocate file lock outside of spinlock
>     
>     As suggested by Christoph Hellwig, this moves allocation
>     of new file locks out of generic_setlease into the
>     callers, nfs4_open_delegation and fcntl_setlease in order
>     to allow GFP_KERNEL allocations when lock_flocks has
>     become a spinlock.
>     
>     Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>     Acked-by: J. Bruce Fields <bfields@redhat.com>
> 
>  fs/locks.c          |   36 ++++++++++++------------------------
>  fs/nfsd/nfs4state.c |   26 +++++++++++++++-----------
>  include/linux/fs.h  |    1 +
>  3 files changed, 28 insertions(+), 35 deletions(-)
> 
> commit a282a1fa6b23bd21ba0b86e53ed2a316b001836f
> Author: J. Bruce Fields <bfields@redhat.com>
> Date:   Tue Oct 26 18:25:30 2010 -0400
> 
>     lockd: fix nlmsvc_notify_blocked locking
>     
>     nlmsvc_notify_blocked walks the nlm_blocked list,
>     which requires nlm_blocked_lock.
>     
>     Signed-off-by: J. Bruce Fields <bfields@redhat.com>
>     Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
>  fs/lockd/svclock.c |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
> 
> commit 763641d81202834e9d64de2019d1edec12868f4f
> Author: Arnd Bergmann <arnd@arndb.de>
> Date:   Tue Oct 26 22:55:40 2010 +0200
> 
>     lockd: push lock_flocks down
>     
>     lockd should use lock_flocks() instead of lock_kernel()
>     to lock against posix locks accessing the i_flock list.
>     
>     This is a prerequisite to turning lock_flocks into a
>     spinlock.
>     
>     Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>     Acked-by: J. Bruce Fields <bfields@redhat.com>
> 
>  fs/lockd/svc.c     |   11 -----------
>  fs/lockd/svcsubs.c |    9 ++++++++-
>  fs/nfs/Kconfig     |    1 -
>  fs/nfsd/Kconfig    |    1 -
>  4 files changed, 8 insertions(+), 14 deletions(-)

  reply	other threads:[~2010-10-27 20:02 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-26 16:45 nfsd changes for 2.6.37 J. Bruce Fields
2010-10-26 17:22 ` J. Bruce Fields
2010-10-26 17:39   ` Linus Torvalds
     [not found]     ` <AANLkTi=emsmLNFSV=j48d37JQxecQmNGZwY9OYdoKjeS-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-10-26 17:46       ` J. Bruce Fields
2010-10-26 17:46         ` J. Bruce Fields
2010-10-26 20:18 ` Arnd Bergmann
2010-10-26 20:35   ` Bryan Schumaker
2010-10-26 20:55     ` Arnd Bergmann
2010-10-26 21:02       ` Linus Torvalds
2010-10-26 21:24         ` J. Bruce Fields
2010-10-26 21:37           ` Linus Torvalds
2010-10-26 21:44             ` J. Bruce Fields
2010-10-26 22:11               ` J. Bruce Fields
2010-10-26 22:41                 ` J. Bruce Fields
2010-10-27  7:21                 ` Arnd Bergmann
2010-10-27  8:39                   ` Christoph Hellwig
2010-10-27 13:39                     ` J. Bruce Fields
2010-10-27 13:46                       ` Arnd Bergmann
2010-10-27 14:55                         ` J. Bruce Fields
2010-10-27 14:59                           ` Christoph Hellwig
2010-10-27 15:16                             ` J. Bruce Fields
2010-10-27 15:19                               ` Christoph Hellwig
2010-10-27 15:23                             ` Arnd Bergmann
2010-10-27 15:28                               ` J. Bruce Fields
2010-10-27 15:31                               ` Christoph Hellwig
2010-10-27 16:12                               ` Linus Torvalds
     [not found]                                 ` <AANLkTinTm-LwjfBfoFUyp5Dj8S2hexnHGQGpZiOWqyMY-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-10-27 16:46                                   ` J. Bruce Fields
2010-10-27 16:46                                     ` J. Bruce Fields
2010-10-27 17:32                                     ` Linus Torvalds
2010-10-27 17:40                                       ` J. Bruce Fields
2010-10-27 18:20                                         ` Arnd Bergmann
2010-10-27 18:42                                           ` Linus Torvalds
2010-10-27 18:43                                             ` Linus Torvalds
2010-10-27 19:48                                               ` Arnd Bergmann
2010-10-27 20:01                                                 ` J. Bruce Fields [this message]
2010-10-27 20:20                                                   ` Arnd Bergmann
2010-10-27 20:24                                                     ` J. Bruce Fields
2010-10-30 21:25                             ` J. Bruce Fields
2010-10-30 21:31                               ` [PATCH 1/4] locks: prevent ENOMEM on lease unlock J. Bruce Fields
2010-10-30 21:31                               ` [PATCH 2/4] locks: fix leaks on setlease errors J. Bruce Fields
2010-10-31 11:10                                 ` Christoph Hellwig
2010-11-01 17:24                                   ` J. Bruce Fields
2010-11-01 17:41                                     ` Christoph Hellwig
2010-11-01 18:34                                       ` J. Bruce Fields
2010-10-30 21:31                               ` [PATCH 3/4] locks: fix setlease methods to free passed-in lock J. Bruce Fields
2010-10-30 21:31                               ` [PATCH 4/4] nfsd4: initialize delegation pointer to lease J. Bruce Fields
2010-10-31  2:04                                 ` Christoph Hellwig
2010-10-31  3:04                                   ` J. Bruce Fields
2010-10-30 21:40                               ` nfsd changes for 2.6.37 Arnd Bergmann
2010-10-31  2:07                               ` Christoph Hellwig
2010-10-31  3:05                                 ` J. Bruce Fields
2010-10-31 12:34                               ` Christoph Hellwig
2010-10-31 12:35                                 ` [PATCH 1/2] locks: let the caller free file_lock on ->setlease failure Christoph Hellwig
2010-11-03 20:41                                   ` J. Bruce Fields
2010-11-04  1:40                                     ` J. Bruce Fields
2010-11-04  1:41                                       ` J. Bruce Fields
2010-11-06 19:03                                         ` Christoph Hellwig
2010-11-06 19:03                                       ` Christoph Hellwig
2010-11-08 16:10                                         ` J. Bruce Fields
2010-10-31 12:35                                 ` [PATCH 2/2] locks: remove fl_copy_lock lock_manager operation Christoph Hellwig
2010-11-01 15:02                                 ` nfsd changes for 2.6.37 J. Bruce Fields
2010-11-06 19:04                                   ` Christoph Hellwig

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=20101027200145.GE18974@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=arnd@arndb.de \
    --cc=bjschuma@netapp.com \
    --cc=hch@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /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.