Re: [PATCH v5 07/10] pNFS: Retry NFS4ERR_OLD_STATEID errors in layoutreturn-on-close

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

 



On Fri, 2017-11-03 at 12:46 -0400, Anna Schumaker wrote:
> Hi Trond,
> 
> On 11/03/2017 07:35 AM, Trond Myklebust wrote:
> > If our layoutreturn on close operation returns an
> > NFS4ERR_OLD_STATEID,
> > then try to update the stateid and retry. We know that there should
> > be no further LAYOUTGET requests being launched.
> > 
> > Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
> > ---
> >  fs/nfs/nfs4proc.c | 18 ++++++++++++++++--
> >  fs/nfs/pnfs.c     | 18 ++++++++++++++++++
> >  fs/nfs/pnfs.h     |  1 +
> >  3 files changed, 35 insertions(+), 2 deletions(-)
> > 
> > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
> > index fe4a855dc965..1bb0e405aa57 100644
> > --- a/fs/nfs/nfs4proc.c
> > +++ b/fs/nfs/nfs4proc.c
> > @@ -3165,11 +3165,18 @@ static void nfs4_close_done(struct rpc_task
> > *task, void *data)
> >  			calldata->arg.lr_args = NULL;
> >  			calldata->res.lr_res = NULL;
> >  			break;
> > +		case -NFS4ERR_OLD_STATEID:
> > +			if (nfs4_refresh_layout_stateid(&calldata-
> > >arg.lr_args->stateid,
> > +						calldata->inode))
> > {
> 
> This doesn't compile with CONFIG_NFS_V4_1=n.  I get:
> 
>   CC [M]  fs/nfs/nfs4proc.o
> fs/nfs/nfs4proc.c: In function 'nfs4_close_done':
> fs/nfs/nfs4proc.c:3169:8: error: implicit declaration of function
> 'nfs4_refresh_layout_stateid'; did you mean
> 'nfs4_refresh_open_stateid'? [-Werror=implicit-function-declaration]
>     if (nfs4_refresh_layout_stateid(&calldata->arg.lr_args->stateid,
>         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>         nfs4_refresh_open_stateid

Doh! Fixed in v6...
-- 
Trond Myklebust
Linux NFS client maintainer, PrimaryData
trond.myklebust@xxxxxxxxxxxxxxx
��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥




[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