On Fri, May 23, 2014 at 9:22 AM, <andros@xxxxxxxxxx> wrote: > From: Andy Adamson <andros@xxxxxxxxxx> > > Place the call to resend the failed GETATTR under the error handler so that > when appropriate, the GETATTR is retried more than once. > > The server can fail the GETATTR op in the OPEN compound with a recoverable > error such as NFS4ERR_DELAY. In the case of an O_EXCL open, the server has > created the file, so a retrans of the OPEN call will fail with NFS4ERR_EXIST. > Why would the client retransmit the open in this case? We don't use the return value from the getattr call, so the callers of _nfs4_proc_open() will never see the NFS4ERR_DELAY. > Signed-off-by: Andy Adamson <andros@xxxxxxxxxx> > --- > fs/nfs/nfs4proc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > index 397be39..be1b305 100644 > --- a/fs/nfs/nfs4proc.c > +++ b/fs/nfs/nfs4proc.c > @@ -2027,7 +2027,7 @@ static int _nfs4_proc_open(struct nfs4_opendata *data) > return status; > } > if (!(o_res->f_attr->valid & NFS_ATTR_FATTR)) > - _nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, o_res->f_label); > + nfs4_proc_getattr(server, &o_res->fh, o_res->f_attr, o_res->f_label); > return 0; > } > > -- > 1.8.3.1 > -- Trond Myklebust Linux NFS client maintainer, PrimaryData trond.myklebust@xxxxxxxxxxxxxxx -- 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