Return-Path: linux-nfs-owner@vger.kernel.org Received: from fieldses.org ([174.143.236.118]:38743 "EHLO fieldses.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752903AbaGUUA2 (ORCPT ); Mon, 21 Jul 2014 16:00:28 -0400 Date: Mon, 21 Jul 2014 16:00:23 -0400 From: "J. Bruce Fields" To: Jeff Layton Cc: linux-nfs@vger.kernel.org, hch@infradead.org Subject: Re: [PATCH v5 11/10] nfsd: set fl->fl_file properly in nfs4_setlease Message-ID: <20140721200023.GH8438@fieldses.org> References: <1405949706-27757-1-git-send-email-jlayton@primarydata.com> <1405971973-10029-1-git-send-email-jlayton@primarydata.com> <20140721155442.14946ce9@tlielax.poochiereds.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <20140721155442.14946ce9@tlielax.poochiereds.net> Sender: linux-nfs-owner@vger.kernel.org List-ID: On Mon, Jul 21, 2014 at 03:54:42PM -0400, Jeff Layton wrote: > On Mon, 21 Jul 2014 15:46:13 -0400 > Jeff Layton wrote: > > > We must set the fl->fl_file properly for the lease, or there will be > > trouble when the lease gets removed. > > > > Longer term, it would probably make sense to set fl_file during the > > setlease call, since we pass it in, but this should work around the > > immediate oops that I've been seeing. > > > > Signed-off-by: Jeff Layton > > --- > > fs/nfsd/nfs4state.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c > > index 3946a5a9459c..b21319816b89 100644 > > --- a/fs/nfsd/nfs4state.c > > +++ b/fs/nfsd/nfs4state.c > > @@ -3514,6 +3514,7 @@ static int nfs4_setlease(struct nfs4_delegation *dp) > > WARN_ON_ONCE(1); > > return -EBADF; > > } > > + fl->fl_file = filp; > > status = vfs_setlease(filp, fl->fl_type, &fl); > > if (status) { > > locks_free_lock(fl); > > Obviously, this should ideally be squashed into patch #1 in the series > I sent this morning to prevent regressions. Bruce, can you fix that up > or do I need to resend? I'll take care of it, thanks! --b.