Re: [PATCH 1/3] nfsd: don't try to shut down nfs4 state handling unless it's up

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

 



On Sun, 13 Jun 2010 16:28:42 -0400
"J. Bruce Fields" <bfields@xxxxxxxxxxxx> wrote:

> On Wed, Jun 09, 2010 at 02:29:43PM -0400, Jeff Layton wrote:
> > Ahh ok, I see what you're talking about now. Yeah, that should probably
> > also be fixed. I think we just need to ensure to shut down the state in
> > an error condition. Something like this compile-tested only patch?
> > 
> > From 19bd25ea9a76ea184e4c30831765e812ce19b0a5 Mon Sep 17 00:00:00 2001
> > From: Jeff Layton <jlayton@xxxxxxxxxx>
> > Date: Wed, 9 Jun 2010 14:21:51 -0400
> > Subject: [PATCH] nfsd: shut down NFSv4 state when nfsd_svc encounters an error
> > 
> > Currently, it's left up in some situations. That could cause the grace
> > period to be shorter than it should be (along with other problems).
> 
> The patch looks right to me, thanks.
> 
> --b.
> 

FWIW, I've done a bit of testing with this patch on top of the other
set and it seems to be ok. That said, I don't have a reliable test that
makes the state setup "leak" like this, so I can't really say much
other than that it seems to be ok.

> > 
> > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
> > ---
> >  fs/nfsd/nfssvc.c |   11 +++++++----
> >  1 files changed, 7 insertions(+), 4 deletions(-)
> > 
> > diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
> > index 06b2a26..a06ea99 100644
> > --- a/fs/nfsd/nfssvc.c
> > +++ b/fs/nfsd/nfssvc.c
> > @@ -402,9 +402,9 @@ nfsd_svc(unsigned short port, int nrservs)
> >  	nfsd_reset_versions();
> >  
> >  	error = nfsd_create_serv();
> > -
> >  	if (error)
> > -		goto out;
> > +		goto shutdown_state;
> > +
> >  	error = nfsd_init_socks(port);
> >  	if (error)
> >  		goto failure;
> > @@ -416,9 +416,12 @@ nfsd_svc(unsigned short port, int nrservs)
> >  		 * so subtract 1
> >  		 */
> >  		error = nfsd_serv->sv_nrthreads - 1;
> > - failure:
> > +failure:
> >  	svc_destroy(nfsd_serv);		/* Release server */
> > - out:
> > +shutdown_state:
> > +	if (error < 0)
> > +		nfs4_state_shutdown();
> > +out:
> >  	mutex_unlock(&nfsd_mutex);
> >  	return error;
> >  }
> > -- 
> > 1.5.5.6
> > 


-- 
Jeff Layton <jlayton@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux